Архив за ‘

PHP

’ категория

Добавяне на множество безразборно генерирани низове към база от данни

Днес случайно се натъкнах на парче код, написано от мен доста отдавна, което много ме изнедада и му се зарадвах някакси. Сътворил съм странно решение на интересна задача. Представете си, че трябва да добавите определено количество от редове в таблица, например промо кодове, които реално са безразборно генерирани низове. Тези низове трябва да са уникални разбира се, така че имаме unique key в базата! И така вместо генериране на кодовете, проверка дали вече ги има в таблицата и ако не-> добавяне в таблицата, аз просто съм направил следното:

$j = 0;
for($i=0; $i<$count; $i++)
{
	while(true)
	{
		try
		{
			$code = str_makerand();
			$codeID = $this->addItem(
				$this->tableNameCodes,
				array('code'),
				array($code)
			);

			break;
		}
		catch(Exception $e){
			break;
		}
	}
}

Интеграция на CodeIgniter и PHPList

Здравейте на всички. Имах един наистина доста натоварен месец и по тази причина не съм ъпдейтвал блога от доста време. Затова пък сега ви давам един малък бонус :) . Бях зает с доста неща, включително писането на библиотека за CodeIgniter свързана с интеграцията на PHPList. Преди да я реализирам потърсих в гугъл за готова такава, но за жалост не намерих. И впоследствие си написах моя собствена за около час и ми свърши перфектна работа:) Ето и библиотеката Прочети повече

UTF8 символи в адреса и проблеми с ajax

Тези проблеми имат малко история за мен. Преди месец се сблъсках с тях, викайки ajax скриптове с адрес, съдържащ не само аглийски символи – от българската азбука например. Написах си javascript функция, която Прочети повече

ПейПал и неговата опция Account Optional Setting

Играл съм си с интеграцията на ПейПал в няколко онлайн магазина , но никога до сега не съм изпадал в такава ситуация. За тези, които не са наясно, ‘Account Optional Setting’ позволява на клиентите на онлайн магазините да плащат директно през ПейПал, предоставяйки информацията за credit/debit/prepaid картата си. Това е наистина много як фиййчър, защото създаването на ПейПал профил всъщност не е достатъчно за да се завърши плащането. Клиентите трябва да оторизират пред ПейПал своята карта, което се прави на няколко стъпки: Прочети повече

Prado и неговия page state

Имах проблеми с намирането и установяването на един бъг. Уебсайта се разработва с Prado фреймуорк-а на последна версия. Екстенднал съм TPage класа и използвам моя MTPage клас. Там имам функция използвана от TDropDownList с AutoPostBack  при смяна избрания елемент, а самата функция изпълнява следното: $this->Response->reload(). Този  TDropDownList е в MainLayOut.tpl файла, защото трябваше да присъства на всяка страница, но бях забравил да използвам следния синтаксис при биндването:
Прочети повече

Спам ботовете и reCaptcha плъгина

Преди време имах проблеми със спам ботовете, коментиращи моите постове, слагайки реклами и линкове, но аз инсталирах reCaptcha плъгина за wordpress и забравих за всичко. Добре, ама тия дни ставам свидетел на това как едно точно определено IP успява да преодолее валидацията ! IP-то е 89.248.168.40 и наистина бих ви препоръчал да го добавите в бан листата си. Аз ще го направя със сигурност! Днес например имах 50 коментара, всичките влезнали като одобрени !

CodeIgniter, Eclipse PDT и използването на IntelliSense

За тези, които не са наясно, IntelliSense е удобство предлагано от Eclipse PDT, което ни позволява бързо да инспектираме атрибутите на инстанцирани обекти от какъвто ида е тип, параметрите на функциите/методите, допълване на кода, кратко описание, ако е налично и други. Това е невероятно удобно, при разработката на приложения, независимо от програмния език. Когато разработваме с CodeIgniter, поради начина, по който е написан framework-a, IntelliSense-а не работи.
Прочети повече

Подобрения по language функционалността на CodeIgniter

Някога ядосвали ли сте се на функционалността на CodeIgniter свързана езиковата поддръжка и локализацията? Много съм се дразнел винаги на постоянното повтаряне на:

echo $this->lang->line('sample_label');

Прочети повече

Prado и динамично зареждане на модули от TPage

Днес имах големи проблеми, опитвайки се да зареждам модули на Prado от TPage, без да използвам application.xml. Имах такова изискване за интеграцията на глобализационния модул на Prado в нашето уеб приложение. След няколко часа мъки най-накрая успях да намеря магическите редове код, които направиха възможно това. Изненадан съм, че нямаше никаква информация в документацията по този проблем, във форумите също :( .

Ето и кода:
Прочети повече

Кажете не на спам ботовете

В скоро време имах много трудни моменти със справянето със спам ботовете, които посещават блоговете и пускат коментари по постовете, рекламирайки неща, които не искаш. Ok, първоначално започнах борбата с тях просто като изтривам коментарите и добавям ip-тата в моята бан листа използвайки htaccess фаил по следния начин:
Прочети повече