Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: token juz mi ręce opadają
Forum PHP.pl > Forum > PHP
nandrzejn
Mam problem, który może wydać się śmieszny ale faktycznie tak jest. Potrzebuje podpiąć pod moją stronę token. Ponieważ nie za bardzo idzie mi programowanie ściągnąłem gotowce z sieci. Poniżej przedstawię kody rejestracja.php i token.php. W skrócie pierwszy generuje hasło na obrazek i uruchamia sesje drugi tworzy obrazek. Powiem w czym problem (zaznaczę, że biblioteka tworzy poprawnie obrazy) jeżeli w pliku token.php umieszczę $slowo = $_SESSION['log']; zmienną sesji aby na obrazku było konkretne słowo to niestety obraz jest pusty. Próbowałem wielu gotowych rozwiązań i efekt ten sam, czyli Sesja nie przenosi wygenerowanego hasła do obrazu. Czy to możliwe?questionmark.gif Pomocy, drugi dzień nad tym siedzę i nic ciągle klapa.

rejestracja.php
  1. <?
  2.  
  3. function generujHaslo()
  4. {
  5. $dlugosc_hasla = rand (4, 6);
  6. $zestaw_znakow = "abcdefghijklmnopqrstuvwxyz0123456789";
  7. srand((double)microtime() * 1000000);
  8.  
  9. while(strlen($haslo) < $dlugosc_hasla)
  10. {
  11. $znak = $zestaw_znakow[rand(0, strlen($zestaw_znakow) - 1)];
  12. if(!is_integer(strpos($haslo, $znak))) $haslo .= $znak;
  13. }
  14. return $haslo;
  15. }
  16. $Haslo= generujHaslo();
  17.  
  18. $kod = $Haslo;
  19.  
  20. $_SESSION['log'] = $kod;
  21.  
  22. ?>
  23.  
  24. <img src="token.php"> <FORM action="zapisz.php" Method="post"> Tutaj przepisz kod z obrazka: <INPUT NAME="ID"><br> <input name="sprawdz" value="<?php echo $sprawdz ?>" type="hidden"> <br> <INPUT TYPE="submit" VALUE="Sprawdz"></form>



token.php
  1. <?php
  2. $slowo = $_SESSION['log'];
  3.  
  4.  
  5. $wysokosc=20;
  6. $szerokosc=75;
  7.  
  8.  
  9. $pic=ImageCreate($szerokosc,$wysokosc);
  10. $bialy=ImageColorAllocate($pic,240,248,255);
  11. $czarny=ImageColorAllocate($pic,0,0,0);
  12. $szary=ImageColorAllocate($pic,150,150,150);
  13.  
  14. ImageFill($pic,1,1,$bialy);
  15. for($i=0;$i<150;$i++)
  16. {
  17. $los1=rand(0,$szerokosc);
  18. $los2=rand(0,$wysokosc);
  19.  
  20. ImageLine($pic,$los1,$los2,$los1,$los2,$szary);
  21. }
  22. for($i=0;$i<strlen($slowo) ;$i++)
  23. {
  24. $rozmiar=rand(2,5);
  25.  
  26. ImageString($pic,$rozmiar,$i*10+7,3,trim($slowo[$i]),$czarny);
  27. }
  28. Header("Content-type: image/gif");
  29. ImageGIF($pic);
  30. ?>
eai
Jeśli sesja ginie, masz problem z cookies, spróbuj przekazywać session_id pomiędzy token.php?sesid=dsfgsdg34g3gedgw34gsd

Powinno pomóc.
Lub zrób sobie
  1. <?php
  2. print_r($_SESSION);
  3. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.