Показать сообщение отдельно

  #3054  
Старый 10.05.2008, 14:57
DEMOGORGON
Новичок
Регистрация: 02.04.2008
Сообщений: 7
Провел на форуме:
99827

Репутация: 0
По умолчанию

Нашёл скрипт для защиты от авторегистрации. Картинку с кодом выводит, а как сделать так, чтобы извлечь сам код не знаю. Может кто подскажет?
PHP код:
<?php

// старт сессии 
session_start();

// заголовок
header("Content-type: image/png; charset=windows-1251;");
 
// создание изображения
$img imagecreate(120,60);

// генерация цвета фона   
$ren_r rand(190,255);
$ren_g rand(190,255);
$ren_b rand(190,255);   

// настройка цвета фона   
$slfon ImageColorAllocate($img$ren_r$ren_g$ren_b);


//-------------------------------- ШУМЫ ----------<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 

// начальное значение циклов
$i 1;

// включение шумов
$ellipse 1;
$rectang 1;
$line 1;
$pix 1;

/* Шум из элипсов */
if($ellipse) {

$varelp rand(5,50); 

 while(++
$i <= $varelp)
   {
   

$ren_left rand(0,150);
$ren_top rand(0,60);
$ren_x_rad rand(0,150);
$ren_y_rad rand(0,60);

// генирация цвета фона   
$ren_elp_r rand(150,225);
$ren_elp_g rand(150,225);
$ren_elp_b rand(150,225);   

// настройка цвета фона   
$elp ImageColorAllocate($img$ren_elp_r$ren_elp_g$ren_elp_b);

imageellipse ($img$ren_left$ren_top$ren_x_rad$ren_y_rad$elp);


}


/* Шум из прямоугольников */
if($rectang) {

$varrect rand(5,50);  


 while(++
$i <= $varrect)
   {
   

$ren_x1_rect rand(0,120);
$ren_y1_rect rand(0,60);
$ren_x2_rect rand(0,120);
$ren_y2_rect rand(0,60);

// генирация цвета фона   
$ren_rect_r rand(150,225);
$ren_rect_g rand(150,225);
$ren_rect_b rand(150,225);   

// настройка цвета фона   
$rect ImageColorAllocate($img$ren_rect_r$ren_rect_g$ren_rect_b);

imagerectangle ($img$ren_x1_rect$ren_y1_rect$ren_x2_rect$ren_y2_rect$rect);


}
}



/* Шум из линий */
if($line) {

$varline rand(0,50); 

 while(++
$i <= $varline)
   {

$line_x1 rand(0,120);
$line_y1 rand(0,60);
$line_x2 rand(0,120);
$line_y2 rand(0,60);

// генирация цвета линий   
$ren_line_r rand(0,200);
$ren_line_g rand(0,200);
$ren_line_b rand(0,200); 
 
// настройка цвета линий  
$line_c ImageColorAllocate($img$ren_line_r$ren_line_g$ren_line_b);

// настройка цвета линий
imageline ($img$line_x1$line_y1$line_x2$line_y2$line_c);

}
}


/* Шум из пикселей */
if($pix) {

$varpix rand(10,150);

 while(++
$i <= $varpix)
   {
   
$pix_x rand(0,120);
$pix_y rand(0,60);

// генирация цвета линий   
$ren_pix_r rand(0,255);
$ren_pix_g rand(0,255);
$ren_pix_b rand(0,255); 

// настройка цвета линий  
$pix_c ImageColorAllocate($img$ren_pix_r$ren_pix_g$ren_pix_b);
   
ImageSetPixel($img$pix_x$pix_y$pix_c);

}
}


//-------------------------------- ЦИФРЫ ----------<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

// генерация чисел на изображении
$ren_c1 rand(0,9);
$ren_c2 rand(0,9);
$ren_c3 rand(0,9);
$ren_c4 rand(0,9);
$ren_c5 rand(0,9);

// массив из цифр
$code_mass = array($ren_c1,$ren_c2,$ren_c3,$ren_c4,$ren_c5);

// формирование числа
$code implode(""$code_mass);

// запись числа в сессию                 
$_SESSION['imgcode'] = $code;

// отпуск от левого края, слова
$ren_xp rand(0,5);

// расстояние между буквами
$ras_bukv 21;

// случайный размер букв
$ot_fs 25;
$do_fs 30;

// случайная положение y слова
$yb_ot 20;
$yb_do 60;

// генерация цвета текста 1   
$ren_r_с1 rand(0,150);
$ren_g_с1 rand(0,150);
$ren_b_с1 rand(0,150);

// генерация цвета текста 2   
$ren_r_с2 rand(0,150);
$ren_g_с2 rand(0,150);
$ren_b_с2 rand(0,150);

// генерация цвета текста 3   
$ren_r_с3 rand(0,150);
$ren_g_с3 rand(0,150);
$ren_b_с3 rand(0,150);

// генерация цвета текста 4  
$ren_r_с4 rand(0,150);
$ren_g_с4 rand(0,150);
$ren_b_с4 rand(0,150);

// генерация цвета текста 5   
$ren_r_с5 rand(0,150);
$ren_g_с5 rand(0,150);
$ren_b_с5 rand(0,150);

// настройка цвета текста
$c1 imagecolorallocate ($img$ren_r_с1$ren_g_с1$ren_b_с1);
$c2 imagecolorallocate ($img$ren_r_с2$ren_g_с2$ren_b_с2);
$c3 imagecolorallocate ($img$ren_r_с3$ren_g_с3$ren_b_с3);
$c4 imagecolorallocate ($img$ren_r_с4$ren_g_с4$ren_b_с4);
$c5 imagecolorallocate ($img$ren_r_с5$ren_g_с5$ren_b_с5);

// случайный поворот букв
$ren_turn1 rand(-35,35);
$ren_turn2 rand(-35,35);
$ren_turn3 rand(-35,35);
$ren_turn4 rand(-35,35);
$ren_turn5 rand(-35,35);

// случайная положение y буквы
$ren_ht1 rand($yb_ot,$yb_do);
$ren_ht2 rand($yb_ot,$yb_do);
$ren_ht3 rand($yb_ot,$yb_do);
$ren_ht4 rand($yb_ot,$yb_do);
$ren_ht5 rand($yb_ot,$yb_do);

// случайная положение x буквы
$ren_x1 rand($ren_xp,$ras_bukv $ren_xp);
$ren_x2 rand($ras_bukv $ren_xp,$ras_bukv*$ren_xp);
$ren_x3 rand($ras_bukv*$ren_xp,$ras_bukv*$ren_xp);
$ren_x4 rand($ras_bukv*$ren_xp,$ras_bukv*$ren_xp);
$ren_x5 rand($ras_bukv*$ren_xp,$ras_bukv*$ren_xp);

// случайная размер буквы
$ren_fase1 rand($ot_fs,$do_fs);
$ren_fase2 rand($ot_fs,$do_fs);
$ren_fase3 rand($ot_fs,$do_fs);
$ren_fase4 rand($ot_fs,$do_fs);
$ren_fase5 rand($ot_fs,$do_fs);

// массив со шрифтами
$fonts = array('ARS','BETINA','BRUSHSCR','BASKR_LI');
$sf count($fonts);
$sf $sf 1;  

// случайный шрифт 1 
$ren_fc1 rand(0,$sf);
$ren_font1 $fonts[$ren_fc1] . ".ttf";

// случайный шрифт 2
$ren_fc2 rand(0,$sf);
$ren_font2 $fonts[$ren_fc2] . ".ttf";

// случайный шрифт 3
$ren_fc3 rand(0,$sf);
$ren_font3 $fonts[$ren_fc3] . ".ttf";

// случайный шрифт 4
$ren_fc4 rand(0,$sf);
$ren_font4 $fonts[$ren_fc4] . ".ttf";

// случайный шрифт 5
$ren_fc5 rand(0,$sf);
$ren_font5 $fonts[$ren_fc5] . ".ttf";

// настройка цифры 1   
imagettftext ($img$ren_fase1$ren_turn1$ren_x1$ren_ht1$c1$ren_font1$ren_c1);

// настройка цифры 2    
imagettftext ($img$ren_fase2$ren_turn2$ren_x2$ren_ht2$c2$ren_font2$ren_c2);

// настройка цифры 3    
imagettftext ($img$ren_fase3$ren_turn3$ren_x3$ren_ht3$c3$ren_font3$ren_c3);

// настройка цифры 4    
imagettftext ($img$ren_fase4$ren_turn4$ren_x4$ren_ht4$c4$ren_font4$ren_c4);

// настройка цифры 5   
imagettftext ($img$ren_fase5$ren_turn5$ren_x5$ren_ht5$c5$ren_font5$ren_c5);



//--------------------------- ВЫВОД ИЗОБРАЖЕНИЯ -----<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

   
ImageFill($img00$slfon); 
 
Imagepng($img);

// разрушение изображения
ImageDestroy($img);

?>
 
Ответить с цитированием