Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Problem z tokenem
Bojakki
post 21.02.2008, 10:06:27
Post #1





Grupa: Zarejestrowani
Postów: 379
Pomógł: 0
Dołączył: 18.08.2004

Ostrzeżenie: (0%)
-----


Znalazlem w necie takiego tokena:

  1. <?php
  2. // Nadaje nazwe sesji i ja startuje.
  3. session_name("sess");
  4.  
  5. // dodatkowe naglowki, by nie buforowac wyniku
  6. header ("Expires: Mon, 22 Sep 1997 09:00:00 GMT");
  7. header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
  8. header ("Cache-Control: no-store, no-cache, must-revalidate");
  9. header ("Cache-Control: post-check=0, pre-check=0", false);
  10. header ("Pragma: no-cache");
  11.  
  12. // tworzę obrazek o okrelonych wymiarach
  13. $grafix = imagecreate(88, 31);
  14.  
  15. // Losowanie kolorow dla tla i napisu
  16. mt_srand(time()*123456789);
  17.  
  18. //kolor tekstu
  19. $white = imagecolorallocate($grafix, 255, 255, 255);
  20. $black = imagecolorallocate($grafix, 0, 0, 0);
  21. // maluję tło
  22. // otwieram obrazek typu PNG
  23. $grafixBackground = @imagecreatefromjpeg("token.jpg");
  24. // kopiuje cala zawartosc na $grafix
  25. imagecopy($grafix, $grafixBackground, 0, 0, 0, 0, 88, 31);
  26. // Losowanie slowa
  27.  
  28. $sAllowedChars = 'abcdefghijklmnopqrstuvwxyz';
  29. $sAllowedChars .= '0123456789';
  30.  
  31. $sAllowedChars = str_shuffle( $sAllowedChars );
  32. $sPassword = substr( $sAllowedChars, 0, 6 );
  33. //definiuje zbior czcionek i wybieram losowo jedna
  34. $font  = "verdana.ttf";
  35. imagettftext($grafix, 12, 0, 15, 20, $black, $font, $sPassword);
  36.  
  37. //zanieczyszam obrazek niewielkimi liniami
  38. for($i=1;$i<13;$i++){
  39. $randPixSpaceLeft = mt_rand(10, 88);
  40. $randPixSpaceTop = mt_rand(0, 31);
  41. imageline($grafix, $randPixSpaceLeft, $randPixSpaceTop, $randPixSpaceLeft+10, $randPixSpaceTop+7, $white);
  42. }
  43.  
  44. // przekazuje przez sesje wylosowane slowo
  45. $_SESSION["choosenWord"] = $sPassword;
  46.  
  47. // wysyłam odpowiedni nagłówek a następnie obrazek do przeglšdarki
  48. header("Content-type: image/jpeg");
  49.  
  50. imagejpeg($grafix);
  51.  
  52. // sprzštam po sobie
  53. imagedestroy($grafix);
  54. ?>


Wszystko dziala ok (obrazek sie generuje i wyswietla) gdy kod jest sam an stronie. Gdy wrzucilem kod w formularz to zamiast strony wyswietla sie tylko i wylacznie adres strony na ktorej jestem. Wie ktos gdzie lezy problem?

Z gory dziekuje za pomoc


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
qqrq
post 21.02.2008, 10:15:08
Post #2





Grupa: Zarejestrowani
Postów: 418
Pomógł: 8
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


No ale jak "wrzuciłeś kod do formularza"? Musisz ten plik, który ci generuje token potraktować jak obrazek, wrzucić adres do niego do taga IMG. Potem (po zatwierdzeniu formularza) porównujesz zmienną sesji, która trzyma ci token z tym, co użytkownik wpisał w pole.


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 20:43