Blame view

modules/default/controller/captchaController.php 1.21 KB
8d65d0ce   andryeyev   init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  <?php
  
  Class captchaController Extends baseController {
  public function preDispatch(){
   $this->loadBlock = false;
  }
  
  public function index() 
  {
  session_start();
  header('Content-Type: image/png');
  $img = imagecreate(110,30);
  $colorGrey=imagecolorallocate($img, 190, 190, 190);
  $black = imagecolorallocate($img,0,0,0);
  $white = imagecolorallocate($img,255,255,255);
  imagerectangle($img,2,2,13,60,$colorGrey);
  imagefill($img,0,0,$white);
  $n[] = rand(0,9);
  $n[] = rand(0,9);
  $n[] = rand(0,9);
  $n[] = rand(0,9);
  $_SESSION['spam'] = implode('',$n);
  imagettftext($img,20,0,9,25,$black,'./img/timeset.ttf',implode(' ',$n));
  //imageline($img, 0, 0, 0, 150, $black);
  //imageline($img, 0, 0, 150, 0, $black);
  //imageline($img, 60, 60, 60, 60, $black);
  $p = 0;
  while ($p<800)
  {
     $x = mt_rand(1,109); // ñëó÷àéíàÿ êîîðäèíàòà ïèêñåëÿ øóìà ïî îñè X
     $y = mt_rand(1,29); // îñü Y   imagecolorat($im, 10, 15);
     $pixel = imagecolorat($img, $x, $y); // óçíàåì êàêîé öâåò èñïîëüçóåòñÿ íà ìåñòå áóäóùåãî ïèêñåëÿ øóìà
     $point = ($pixel == $colorGrey) ? $white : $colorGrey; // åñëè áûë ÷åðíûé, êðàñèì ïèêñåëü áåëûì, åñëè áåëûé - êðàñèì ÷åðíûì
     imagesetpixel($img,$x,$y,$point); // ðèñóåì ñàì ïèêñåëü
     $p++;
  }
  imagepng($img);
  imagedestroy($img);
  }
  
  
  }
  ?>