Как получить текущее значение сеанса с помощью PHP? - PullRequest
1 голос
/ 24 января 2011

Я использовал кодирование капчи в моей форме. Ниже приведено кодирование создания капчи

<?php  
   session_start();  

    $string = '';  

   for ($i = 0; $i < 5; $i++)
     {  
       $string .= chr(rand(97, 122));  
     }  

  $_SESSION['rand_code'] = $string;  



  $dir = 'fonts/';  

  $image = imagecreatetruecolor(150,60) or die('Cannot Initialize new image ');  
  $black = imagecolorallocate($image, 0, 0, 0);  
  $color = imagecolorallocate($image, 200, 100, 90); 
  $white = imagecolorallocate($image, 255, 255, 255);  

  imagefilledrectangle($image,0,50,150,100,$black);  
  imagettftext ($image, 30, 0, 10, 40, $color, $dir."BauhausMedium.ttf", $_SESSION['rand_code']);  


  header("Content-type: image/jpeg");  
  imagejpeg($image);  

  imagedestroy($image);




?> 

На другой странице я называю этот код с помощью тега img.

но проблема вНа этой странице я хочу, чтобы изображение captcha в textbox.i использовало $ _session ['rand_code'];но я отображаю предыдущее значение сеанса, которое является предыдущим значением изображения капчи.я хочу текущее значение изображения на этой странице?

Ответы [ 2 ]

1 голос
/ 24 января 2011

Один из способов - создать случайный код и сохранить его в сеансе на странице, которая будет иметь тег img. А на странице, где создается изображение, просто прочитайте сессию.

1 голос
/ 24 января 2011

Вы получаете доступ к коду капчи после вы загружаете форму, потому что изображение в форме фактически вызывает код капчи.

Проверять капчу можно только после отправки формы.

...