Картинка с защитным кодом при регистрации, в PHP Fusion 6.01.6 слижком простая.
Данный код позволит сделать эту катринку более интересной.
Например такой:
Или такой:
<b>Порядок установки:</b>
1. Открываем maincore.php
2. Находим строчку
<!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->// Create Validation image if $vimage is set and die();<!--c2--></div><!--ec2-->
3. Ниже заменяем существующий код до строчки <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->// Fetch the Site Settings from the database and store them in the $settings variable<!--c2--></div><!--ec2-->следующим кодом: <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->if (isset($vimage)) {
$check_url = (isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $_SERVER['SCRIPT_NAME']);
if (eregi("register.php", $check_url) && preg_match("/^[0-9a-z]{32}$/", $vimage)) {
$vres = dbquery("SELECT * FROM ".$db_prefix."vcode WHERE vcode_2='$vimage'");
if (dbrows($vres)) {
$vdata = dbarray($vres);
$text = $vdata['vcode_1'];
$im=imagecreatetruecolor(220, 50);
$color_arr = array("low" => "0", "high" => "255");
imagefill($im, 0, 0, imagecolorallocate($im, 255, 255, 255));
if (file_exists("images/validate_bg.jpg")) {
$bg = imagecreatefromjpeg("images/validate_bg.jpg");
imagecopyresized ($im, $bg, 0, 0, 0, 0, 220, 50, imagesx($bg), imagesy($bg));
}
for ($i=0; $i<5; $i++) imageline($im, 0, $i*10+2, 220, $i*10+10, imagecolorallocate($im, 128, 128, 128));
for ($i=0; $i<10; $i++) imageline($im, $i*40+10, 0, $i*40+5, 50, imagecolorallocate($im, 128, 128, 128));
for ($i=0; $i<strlen($text); $i++) { $a = rand(-25, 25); imagettftext($im, 22, $a, ($i*40)+15, 38+($a/8), imagecolorallocate($im, rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high'])), 'images/font.ttf', $text{$i}); }
for ($i=0; $i<rand(2000, 4000); $i++) { imagesetpixel($im, rand(0, 220), rand(0, 50), imagecolorallocate($im, 86, 91, 102)); }
for ($i=0; $i<rand(1000, 3000); $i++) { imagesetpixel($im, rand(0, 220), rand(0, 50), imagecolorallocate($im, rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high']))); }
header("Content-type: image/jpeg");
imagejpeg($im);
imagedestroy($im);
}
}
die();
break;
}<!--c2--></div><!--ec2-->
4. Помещаем в каталог <b>images</b> файл с ttf фонтом, которым будут прорисовываться символы. Можно выбрать любой понравившийся вам фонт из дирректории <b>C:\WINDOWS\Fonts</b> на вашем компьютере. Я выбрал Xirod.ttf. Загружаем его на сервер в каталог <b>images</b> и переименовываем в <b>font.ttf</b>
<b>Установка завершена.</b>
Дополнительная информация по настройке данного програмного кода:
В строчке <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->$color_arr = array("low" => "0", "high" => "255");<!--c2--></div><!--ec2--> задается диапазон цветовой палитры для отображаемых символов. Цвета символов генерируются случайно из заданного диапазона. Это требуется если вы используете светлый или темный скин. Этим диапазоном можно подкорректировать гамму цветов символов если задать диапазон 128 - 255 более приемлемо для темного скина, 0 - 128 для светлого. Для светлого скина диапазон 0 - 255 можно оставить без изменения.
Фон <b>background</b> выбирается из стандартной картинки validate_bg.jpg размещенной в каталоге <b>images</b>. Вы можете заменить картинку любым изображением, с любыми размерами, которое будет являться фоном картинки с кодом. Следует помнить что картинка validate_bg.jpg будет сжата или растянута до размеров 220 x 50 точек, не зависимо от ее реальных размеров.
Если вы не хотите использовать в качестве background картинку, можете удалить из каталога images файл validate_bg.jpg. В этом случае, цвет background можно изменить в строчке <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->imagefill($im, 0, 0, imagecolorallocate($im, 255, 255, 255));<!--c2--></div><!--ec2--> Как видно в конце строки атрибуты каналов RGB для цвета, которым будет залит background.
Данный код позволит сделать эту катринку более интересной.
Например такой:
You must be registered for see images attach
Или такой:
You must be registered for see images attach
<b>Порядок установки:</b>
1. Открываем maincore.php
2. Находим строчку
<!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->// Create Validation image if $vimage is set and die();<!--c2--></div><!--ec2-->
3. Ниже заменяем существующий код до строчки <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->// Fetch the Site Settings from the database and store them in the $settings variable<!--c2--></div><!--ec2-->следующим кодом: <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->if (isset($vimage)) {
$check_url = (isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $_SERVER['SCRIPT_NAME']);
if (eregi("register.php", $check_url) && preg_match("/^[0-9a-z]{32}$/", $vimage)) {
$vres = dbquery("SELECT * FROM ".$db_prefix."vcode WHERE vcode_2='$vimage'");
if (dbrows($vres)) {
$vdata = dbarray($vres);
$text = $vdata['vcode_1'];
$im=imagecreatetruecolor(220, 50);
$color_arr = array("low" => "0", "high" => "255");
imagefill($im, 0, 0, imagecolorallocate($im, 255, 255, 255));
if (file_exists("images/validate_bg.jpg")) {
$bg = imagecreatefromjpeg("images/validate_bg.jpg");
imagecopyresized ($im, $bg, 0, 0, 0, 0, 220, 50, imagesx($bg), imagesy($bg));
}
for ($i=0; $i<5; $i++) imageline($im, 0, $i*10+2, 220, $i*10+10, imagecolorallocate($im, 128, 128, 128));
for ($i=0; $i<10; $i++) imageline($im, $i*40+10, 0, $i*40+5, 50, imagecolorallocate($im, 128, 128, 128));
for ($i=0; $i<strlen($text); $i++) { $a = rand(-25, 25); imagettftext($im, 22, $a, ($i*40)+15, 38+($a/8), imagecolorallocate($im, rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high'])), 'images/font.ttf', $text{$i}); }
for ($i=0; $i<rand(2000, 4000); $i++) { imagesetpixel($im, rand(0, 220), rand(0, 50), imagecolorallocate($im, 86, 91, 102)); }
for ($i=0; $i<rand(1000, 3000); $i++) { imagesetpixel($im, rand(0, 220), rand(0, 50), imagecolorallocate($im, rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high']), rand($color_arr['low'], $color_arr['high']))); }
header("Content-type: image/jpeg");
imagejpeg($im);
imagedestroy($im);
}
}
die();
break;
}<!--c2--></div><!--ec2-->
4. Помещаем в каталог <b>images</b> файл с ttf фонтом, которым будут прорисовываться символы. Можно выбрать любой понравившийся вам фонт из дирректории <b>C:\WINDOWS\Fonts</b> на вашем компьютере. Я выбрал Xirod.ttf. Загружаем его на сервер в каталог <b>images</b> и переименовываем в <b>font.ttf</b>
<b>Установка завершена.</b>
Дополнительная информация по настройке данного програмного кода:
В строчке <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->$color_arr = array("low" => "0", "high" => "255");<!--c2--></div><!--ec2--> задается диапазон цветовой палитры для отображаемых символов. Цвета символов генерируются случайно из заданного диапазона. Это требуется если вы используете светлый или темный скин. Этим диапазоном можно подкорректировать гамму цветов символов если задать диапазон 128 - 255 более приемлемо для темного скина, 0 - 128 для светлого. Для светлого скина диапазон 0 - 255 можно оставить без изменения.
Фон <b>background</b> выбирается из стандартной картинки validate_bg.jpg размещенной в каталоге <b>images</b>. Вы можете заменить картинку любым изображением, с любыми размерами, которое будет являться фоном картинки с кодом. Следует помнить что картинка validate_bg.jpg будет сжата или растянута до размеров 220 x 50 точек, не зависимо от ее реальных размеров.
Если вы не хотите использовать в качестве background картинку, можете удалить из каталога images файл validate_bg.jpg. В этом случае, цвет background можно изменить в строчке <!--c1--><div class='codetop'>Код</div><div class='codemain'><!--ec1-->imagefill($im, 0, 0, imagecolorallocate($im, 255, 255, 255));<!--c2--></div><!--ec2--> Как видно в конце строки атрибуты каналов RGB для цвета, которым будет залит background.