Вход Регистрация
Файл: img/cptch.php
Строк: 51
<?php
 
/** Вывод изображения каптчи
 * @author [Eugene]
 * @copyright 2011
 * @url http://forwebm.net
 */
 
@ini_set('display_errors'0);
 @
error_reporting(E_ALL & ~E_NOTICE);
 
//-------------------------------------------------------------------------------------
 
session_start();
 
//-------------------------------------------------------------------------------------
 
class w_graph_elements {

  private function 
hex_to_rgb($hex$def) {
   if(
substr($hex,0,1) == '#')  $hex substr($hex,1);
   if(
strlen($hex) == 3) { $hex substr($hex,0,1).substr($hex,0,1).
   
substr($hex,1,1).substr($hex,1,1).substr($hex,2,1).substr($hex,2,1); }
   
$rgb $def;
   if(
strlen($hex) != 6) { return $rgb; }
   
$rgb['R'] = hexdec(substr($hex,0,2));
   
$rgb['G'] = hexdec(substr($hex,2,2));
   
$rgb['B'] = hexdec(substr($hex,4,2));
   return 
$rgb;
  }
//hex_to_rgb    
    
  
function PaintImage($bordercolor$bgcolor$linescolor$textcolor$width=61$height=20$size=4) {            
   
$bordercolor = @$this->hex_to_rgb($bordercolor, array('R'=>195,'G'=>204,'B'=>206));
   
$bgcolor = @$this->hex_to_rgb($bgcolor, array('R'=>241,'G'=>243,'B'=>244));
   
$linescolor = @$this->hex_to_rgb($linescolor, array('R'=>194,'G'=>194,'B'=>133));   
   
$textcolor = @$this->hex_to_rgb($textcolor, array('R'=>4,'G'=>82,'B'=>148));
   
$text 'error';
   if (isset(
$_GET['tim']) && ($_GET['tim'] != '')) {
    
$text = ($_SESSION["sendnumb".$_GET['tim']] != '') ? $_SESSION["sendnumb".$_GET['tim']] : $text;
   }      
   
$width  = (!$width || !@is_numeric($width)) ? 61 $width;
   
$height = (!$height || !@is_numeric($height) || ($height 10)) ? 20 $height;     
   
$size = (!$size || !@is_numeric($size)) ? $size;
   
$img imagecreate($width$height);//create inage
   
@imagecolorallocate($img$bgcolor['R'], $bgcolor['G'] ,$bgcolor['B']);
   
$rectcolor imagecolorallocate($img$bordercolor['R'], $bordercolor['G'] ,$bordercolor['B']); 
   @
imagerectangle($img00$width-1$height-1$rectcolor); //rect act
   
$textcolor imagecolorallocate($img$textcolor['R'], $textcolor['G'] ,$textcolor['B']);
   
$textcolor_sub imagecolorallocate($img$linescolor['R'], $linescolor['G'] ,$linescolor['B']);
   for (
$i=3$i<=$width-2$i+=3) {
    @
imageline($img$i3$i$height-4$textcolor_sub);//lines paint    
   
}
   
$min_y 5;
   
$max_y = ($height $min_y 2) - imagefontheight($size);
   
$x 3;
   
$x_step = @imagefontwidth($size);      
   for (
$i=0$i<=strlen($text)-1$i++) {    
    
$ch $text[$i];
    
$y  rand($min_y$max_y);
    @
imagechar($img$size$x$y$ch$textcolor);
    
$x+=$x_step;
    if (
$x $width $x_step) { break; }    
   }
   
//@imagestring($img, 3, 5, 3, $text, $textcolor);//paint code  
   
@imagepng($img); //out  
   
@imagedestroy($img); //free        
  
}//PaintImage 
    
 
}//w_graph_elements 
 //-------------------------------------------------------------------------------------
 
$gr = new w_graph_elements();
 
$gr->PaintImage($_GET['br'], $_GET['bg'], $_GET['ln'], $_GET['tx'], $_GET['w'], $_GET['h'], $_GET['s']); 
 
//-------------------------------------------------------------------------------------
 /* Copyright (с) 2011 forwebm.net */
?>
Онлайн: 0
Реклама