Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Funkcja nie wyrzuca wyniku?
zaaap
post
Post #1





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

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


Witam,
Pracuje nad czyms, co bedzie generowało link do zmiany hasła i wysyłało go na email w razie zapomnienia.
Plik głowny:
  1. $klucz=createkey(13);
  2. tempass($nazwa_uz, $klucz);

A teraz funkcje:
  1. function createkey($dlugosc) {
  2. $klucz='';
  3. for($i=0; $i<$dlugosc; $i++) {
  4. switch(rand(1,3)) {
  5. case 1: $haslo.=chr(rand(48,57));break;
  6. case 2: $haslo.=chr(rand(65,90));break;
  7. case 3: $haslo.=chr(rand(97,122));break;
  8. }
  9. }
  10. return $klucz;
  11. }

Problem skupia się w tym, iz wygenerowany klucz nie istnieje(?)
Funkcja tempass:
  1. function tempass($nazwa_uz, $klucz)
  2.  
  3. {
  4. if (!$klucz)
  5. throw new Exception('nie ma klucza!'); // i tam dalsza część kodu

Po wywołaniu wyskakuje mi wyjatek, lecz nie wiem co powoduje pustotę(?) klucza. Ktos naprowadzi?
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Chryste panie... Choroba wściekłej ślepoty?
A zmieniasz wartość $klucz? Nie... Ludzie patrzcie co piszecie.
Go to the top of the page
+Quote Post
zaaap
post
Post #3





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

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


Yhh godziny przed monitorem robią swoje, ale okej, zeby nie było poprawilem na $klucz i dalej nic.
  1. function tempass($nazwa_uz, $klucz)
  2. {
  3. if (!$klucz)
  4. throw new Exception('Nie ma klucza!.');
  5. $lacz = lacz_bd();
  6. $wynik = $lacz->query("INSERT INTO `tempass` (`nick`, `klucz`) VALUES ('$nazwa_uz', '$klucz')");
  7. if (!$wynik)
  8. throw new Exception('Wpis w tabeli nieudany.');
  9. else
  10. return true;
  11. }

Otrzymuje komunikat o poprawnym zapisaniu w tabeli pomimo, że pole klucz pozostaje puste, nie wyrzuca wyjatkow.
Go to the top of the page
+Quote Post
kamillo1888
post
Post #4





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 22.04.2007
Skąd: Mówią, że Matrix

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


  1.  
  2. function createkey($dlugosc) {
  3.  
  4. for($i=0; $i<$dlugosc; $i++) {
  5.  
  6. switch(rand(1,3)) {
  7. case 1: $haslo.=chr(rand(48,57));break;
  8. case 2: $haslo.=chr(rand(65,90));break;
  9. case 3: $haslo.=chr(rand(97,122));break;
  10. }
  11.  
  12. }
  13. return $haslo;
  14. }


Zmienna $klucz była pusta bo nigdzie nie przypisałeś jej wartości.

Ten post edytował kamillo1888 16.09.2009, 22:28:44
Go to the top of the page
+Quote Post
zaaap
post
Post #5





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

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


Tak, poprawilem to po poscie 'wookieb'. Pisalem o tym wyzej, problem jak wyżej. Mimo, ze klucz nie wydaje sie byc pusty do tabeli nic nie jest wpisywane.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 2.10.2025 - 11:04