Представляем Вашему вниманию описание 10 бесплатных CAPTCHA тестов, реализованных в виде скриптов и сервисов, предназначенных для защиты Вашего ресурса от спама.

— Предотвратить появление спама на Вашем сайте Вы сможете с помощью этого бесплатного сервиса, используя CAPTCHA.

Бесплатный PHP CAPTCHA скрипт с открытым исходным кодом генерирует достаточно сложные изображения и коды для предотвращения спама. Несмотря на то, что для работы скрипта необходима графическая библиотека GD, скрипт очень просто подключить к существующим на сайте HTML формам. Скрипт создает сложные CAPTCHA изображения и проверяет правильность заполнения.

мгновенно добавит CAPTCHA на сайт. Все, что для этого необходимо - вставить небольшой код на страницы Вашего сайта. Для правильной работы скрипта нужно, чтобы сервер поддерживал PHP, Perl, ASP или ASP.NET.
![]()
— Еще один PHP скрипт для генерации CAPTCHA изображений. Скрипт бесплатен, не требует использования БД и поддерживает PHP, начиная с версии 4.3.0. Существуют так же реализации в виде , , и .

для защиты Вашего сайта использует CAPTCHA изображения и аудио-файлы, которые легко можно использовать в HTML формах. Конечно, для использования этой технологии, сервер должен поддерживать что-либо из перечисленного: PHP, ASP, Perl, Python, JSP, Ruby.
Данная статья не претендует на роль всеобъемлющего руководства на тему “как сделать так, чтоб меня никто не поломал”. Так не бывает. Единственная цель этой статьи – показать некоторые используемые мной приемы для защиты веб-приложений типа WWW-чатов, гостевых книг, веб-форумов и других приложений подобного рода. Итак, давайте рассмотрим некоторые приемы программирования на примере некоей гостевой книги, написанной на PHP.
Дальше »
Одной из главных составляющих планируемой 5-й версии PHP станет Zend Engine 2.0, поддерживающий совершенно новую модель объектно-ориентированного программирования. Эта статья описывает развитие поддержки объектно-ориентированного программирования в PHP, включая новые возможности и изменения, запланированные в PHP 5.
Дальше »
Создавая текстовый счетчик, мы ограничены свойствами текста в браузере. Если же Вы хотите чегото из ряда вон выходящего, удовлетворяющего Вашему полету фантазии, то Вам подойдет как раз описываемая тема.
Данный пример демонстрирует работу простого графического счетчика. По функциональности он совершенно идентичен текстовому счетчику.
Для работы этого счетчика необходимо создать графическое изображение, которое послужит базой для счетчика.
Это изображение надо сохранить под именем counter.png
В скрипте использована библиотека GD, перед тем как пользоваться этой библиотекой, узнайте у хостера, подключена ли эта библиотека. Теперь сам скрипт:
<?php
$dat_file="counter.dat"; // Файл счетчика
$log_file="counter.log"; // Файл списка IP
// Открывем файл счетчика и считываем текущий счет
// в переменную $count
$f=fopen($dat_file,"r");
$count=fgets($f,100);
fclose($f);
$count=ereg_replace(" ","",$count); // Удаляем символ конца строки
$count++; // Увеличиваем счетчик
// Записываем данные обратно в файл
$f=fopen($dat_file,"w");
fputs($f,"$count ");
fclose($f);
// Создаем новое изображение из файла
$im = ImageCreateFromPNG('counter.png');
// Назначаем черный цвет
$black = ImagecolorAllocate($im,0,0,0);
// Выводим счет на изображение
Imagestring($im,1,5,20,$count,$black);
// Выводим изображение в стандартный поток вывода
Header("Content-type: image/png");
ImagePng($im);
// Записываем IP посетителя
$f=fopen($log_file,"a+");
$ip=getenv("REMOTE_ADDR");
fputs($f,"$ip ");
fclose($f);
?>
Для работы этого скрипта необходимо создать два файла, для ведения счета и для списка IP. В файле счета необходимо установить начальное значение счетчика, сделать это можно в любом текстовом редакторе.
Для вывода счётчика в html используйте :
<IMG src="counter.php" WIDTH="88" HEIGHT="31" BORDER=0>
Вот вам и готов счётчик

Рад вам представить новую версию скрипта формы обратной связи. В данной версии были сделаны следующие изменения, для корректной работы скрипта почти на всех хостинг площадках:
-Скрипт теперь работает даже, если registr_global=off, что очень хорошо(безопасность выше)
-Немного переписан скрипт
-Таблица стилей css вынесена в отдельный файл
-В файл config Добавлена новая переменная $statusSuccess = “”;
-Теперь ошибки, например: Введите свое имя выделяются красным цветом, а удачная отправка письма обозначается зеленным цветом
-Немного переписана проверка captcha(защитного кода)
Обо всех найденных ошибках в работе скрипта пожалуйста пишите в комментариях. Также свои предложения насчёт улучшения тоже пишите в комментариях.
Размер архива со скриптом: 158kb
Автор скрипта: FlashRipper
Главное примечание: Скрипт качайте только с официального сайта, т.к на других сайтах в архив могут положить специально испорченный код или еще что-нибудь плохое. Так как заметил в сети много испорченных архивов с моим скриптом.
Если вы хотите отблагодарить меня(за скрипт), то вы можете это сделать по средствам WebMoney, буду рад любой сумме. Также вы можете писать в комментариях к платежу ваше имя и ваш сайт, все имена будут опубликованы на этой странице, а также ссылка на ваш сайт:
Реквизиты WebMoney
R563883891433
Спасибо, вскорем выйдет новая версия скрипта. Если вы хотите разместить на своем сайте данный скрипт, оставьте все без изменения, тоесть оставьте активную ссылку на домашнюю страницу автора, а также в дистрибутив ничего не добавляйте.

Как и обещял новая версия. В ней был исправлен всего лишь небольшая часть кода, а именно теперь все настройки скрипта храняться в отдельном файле config.php
Демо можно посмотреть здесь(откроется в новом окне)
Автор: FlashRipper
Размер архива: 513kb
Скачать архив
Здесь я просто приведу пример кода, который выводит captcha примерно такой формы
Вот сам код:
<?php
session_start();
header(“Content-Type: image/jpeg”);
get_checkcode_picture($_SESSION[check_code]);
die;function get_checkcode_picture($code){
$img=imagecreatetruecolor(50, 30);
$x1=0;
$x2=60;
$y1=rand(0, 30);
$y2=rand(00, 30);
$textcolor = imagecolorallocate ( $img , 255, 255, 255);
imageline($img, $x1, $y1, $x2, $y2, $textcolor);
$x1=rand(0, 50);
$x2=rand(0, 50);
$y1=0;
$y2=30;
imageline($img, $x1, $y1, $x2, $y2, $textcolor);
imagestring($img, 4, 10, 7, $code, $textcolor);
imagejpeg($img);
}
?>
Если подойти с творческим подходом, можно встроить такую captcha в форму отправки письма на e-mail с сайта. Напоминаю здесь только приведен код, который будет выводить примерно такую captcha(см. рисунок).
В данной версии был убран только визуальный редактор, никаких важных функций убрано не было.
Демо можно посмотреть здесь(откроется в новом окне)
Размер архива: 25kb
На сегодняшний день музыкальные магазины online, наподобие Musikload[1], становятся все более распространенными и пользуются бешенной популярностью. В этой статье мы расскажем как можно читать мета-информацию mp3-файла средствами PHP, что поможет вам в создании каталога музыки. Это очень просто, поддержка базы данных не нужна.
Откуда знает MP3-Player, например Winamp информацию об исполнителе или названии композиции, которую он проигрывает? Может быть, он сам каким-то чудным образом узнает название песни и альбома? Нет, здесь нет никакого волшебства! Подобная информация содержится в самих файлах. Музыкальные файлы других форматов таких как WMA или Ogg Vorbis также содержат подобную информацию, но здесь речь пойдет о файлах в формате mp3.
Дальше »
PHP.Первые шаги. Действительно легкая смена дизайна
NAS, Webscript.ru
Предупреждение
Данный текст ни на что не претендует. Надеюсь, что-то из описанного поможет Вам в освоении PHP и использовании его в повседневной практике.
Сразу оговорюсь, что я не только мало смыслю в программировании вообще, но и в PHP в частности. Соответственно и статья писалась для такой же аудитории. Ламер -ламеру. Или дилетант-дилетанту, как угодно. Большинство информации можно найти в форумах или на англоязычных сайтах.
Краткая аннотация:
После прочтения статьи вы сможете использовать только один файл для внесения в него изменений дизайна и навигации. Содержимое сайта при этом не нужно будет даже трогать!
Легкая смена дизайна
Итак, у вас уже что то есть. Какой то информационный web проект. Серия статей, он-лайн книга, просто страничка.
Хорошо, если у вас все в порядке с проектом на диске. Каждый раздел в своем каталоге, скрипты отлажены и жужжат, дизайн закреплен навеки.
У меня такого не было.
То есть порядок то был, а вот с дизайном – полный завал. Плюс я постоянно что то прикручиваю, балуюсь с содержимым. Что же я сделал?
Мне надо было : легко и безболезненно менять дизайн, навигацию, ссылки и баннеры, вставлять новые разделы и все это должно проходить с минимальными телодвижениями .
Я вовсю использовал SSI. Вы знаете что это такое ? Грубо говоря, у меня был шаблон хтмл, в него я вставлял меняющиеся элемнты типа меню навигации, баннеров и так далее. Но само содержание этого уже наполненного шаблона – не менялось! То есть для каждой странички в шаблон вставлял информацию, и сохранял на сервере. После этого, чтобы изменить цвет таблицы, мне пришлось бы заново делать шаблон, выдергивать информацию из старого и вставлять в новый. Можно, конечно, использовать CSS, фреймы, что там еще. Но меня все это по разным причинам не удовлетворяло
Еще, как выход, мне мерещилось использование программы, которая заменяла бы во всех файлах одни строки на другие. Ни то, господа, ни то! Если что то сложное в плане хтмл, да еще написанного вручную, то все это адский труд. Только не подумайте, что я писал на хтмл.
Бывало, конечно, несколько строк накропаю, но я же ленивый. За меня все делало FrontPage 98. Охаиваемое всеми чудо.
Что же делать с этой кучей файлов с расширением *.shtml и невозможностью сменить дизайн так, то бы это не отозвалось болезненным перелопачиванием всей этой кучи? Я ленив, и в своих поисках я набрел на лучшее решение – PHP.
Возможность, которую он дает – один хтмл-шаблон плюс файлы только с содержимым раздела я очень быстро оценил!
Быстренько и монотонно освободив свои shtml ки от разных табличек, вставок, картинок, и другой мутотени я вытер пот со лба. Убрал расширения файлов. Дело в том, что мой хостер хитро сделал-поздней ночью их скрипт вставляет во все файлы с расширением *.html код баннера.
Вот оно ! Стройный ряд файлов выстроился перед моим взором. Умытые, похудевшие и почистившиеся они требовали новой одежки-дизайна.
Я сваял новый шаблон: index.php3.
<HTML>
<HEAD>
</HEAD>
<BODY>
<?php
function foo ($in) {
< !–если не вызывается просто index.php3 то происходит вставка вызываемого файла–>
if ($in != “”) {$out=$in;}
< !– если происходит вызов index.php3 без имени файла, то по умолчанию, вставляется файл main–>
else {$out=”main”;} return $out;}?><!–Мой дизайн и навигация–>
<!–Вызов функции с аргументом – именем файла, запрашиваемым пользователем–>
<?php include (foo($QUERY_STRING)); ?><!–Мой дизайн и навигация–>
</BODY>
</HTML>
Теперь я вызываю странички так
http://myserver.ru/index.php3?news
http://myserver.ru/index.php3?links
http://myserver.ru/index.php3?about
А можно и просто
http://myserver.ru/?news
http://myserver.ru/?links
http://myserver.ru/?about
Отсутствие расширений не является критическим требованием. Если у вас набор файлов с расширениями, это не послужит препятствием. Можно вызывать для вставки любые файлы в каталоге раздела.
Например :
http://myserver.ru/index.php3?news.shtml
http://myserver.ru/index.php3?links.txt
http://myserver.ru/index.php3?about.htm
Конечно, если надо вносить изменения в содержимое (новости подновить, новый линк добавить), то приходится открывать файлы news и link и уже там что-то менять.
Минусы подхода:
1) Таги <meta> и <title> распространяются на все страницы раздела, объединенных общим index.php3.
2) Если поисковая система некорректно обрабатывает сайты, использующие PHP, то пользователь может и не найти Ваш сайт.
Портал посвящен веб разработчикам и созданию сайтов. На сайте вы сможете найти статьи по раскрутке и оптимизации сайта. Все для программы Adobe Photoshop, шрифты, иконки, шаблоны сайтов, уроки графики и веб дизайна.