Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Gdzie jest błąd ?
thekoks
post 10.05.2009, 21:02:09
Post #1





Grupa: Zablokowani
Postów: 64
Pomógł: 1
Dołączył: 31.03.2009

Ostrzeżenie: (60%)
XXX--


Witam mam taki kod na generowanie tokenu
  1. <?php
  2. while (strlen($los1)<60)
  3. {
  4.  do
  5.  {
  6.      $n = rand(48,57);
  7.  // 0-9 = (48-57) A-Z = (65-90) a-z = (97-122)
  8.  } while ($n<48);
  9.  
  10.  $los1= chr($n);
  11. }
  12. ?>

lecz nie wie dlaczego pokazuje mi taki oto błąd

Fatal error: Maximum execution time of 30 seconds exceeded in /home/ftp/artur/pcover_html/beta/index.php on line 192

ktoś wie co mam źle ?
Go to the top of the page
+Quote Post
kamil4u
post 10.05.2009, 21:22:36
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


@DOWN: Ja .... już zbyt późno chyba - dawno takiej pierdoły nie napisałem - przepraszam

----------------ŹLE----------------
Na szybko wygląda na to, że dałeś warunek, który zawsze będzie prawdziwy:
Kod
do
{
     $n = rand(48,57);
} while ($n<48); //$n zawsze będzie mniejsze od 48 :)


Ten post edytował kamil4u 10.05.2009, 21:31:25


--------------------
Go to the top of the page
+Quote Post
peter13135
post 10.05.2009, 21:23:42
Post #3





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


Cytat(kamil4u @ 10.05.2009, 22:22:36 ) *
Na szybko wygląda na to, że dałeś warunek, który zawsze będzie prawdziwy:
Kod
do
  {
      $n = rand(48,57);
  } while ($n<48); //$n zawsze będzie mniejsze od 48 :)


$n zawsze bedzie miała wartość pomiędzy 48 a 57, więc zawsze bedzie większa lub równa 48


--------------------
:)
Go to the top of the page
+Quote Post
thekoks
post 10.05.2009, 21:24:11
Post #4





Grupa: Zablokowani
Postów: 64
Pomógł: 1
Dołączył: 31.03.2009

Ostrzeżenie: (60%)
XXX--


wiem już że błąd nie jest w tym tylko zapytaniu które robie do bazy

  1. INSERT INTO 'uzytkownicy' (login,pasword,email,gg,www,ip,rang,ile,dateon,token,zweryfikowany) VALUES('$konto','$password','$email','$gg','$www','$ip','Register','0','date','$los1','Nie'

Cytat
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''uzytkownicy' (login,pasword,email,gg,www,ip,rang,ile,dateon,token,zweryfikowany' at line 1


Ten post edytował thekoks 10.05.2009, 21:25:43
Go to the top of the page
+Quote Post
peter13135
post 10.05.2009, 21:28:26
Post #5





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


mi tu brakuje nawiasu


a błąd w tym pierwszym jest taki że chr zwraca zawsze jeden znak, czyli petla nie skonczona bo konczy sie wtedy gdy chr zwróci string o długośći większej niż 60
zrób sobie taką pętlę
  1. <?php
  2.  
  3. while($i<200)
  4. {
  5. $i++;    
  6. echo chr($i).'<br>';
  7.  
  8. }
  9. ?>


to zobaczysz

Ten post edytował peter13135 10.05.2009, 21:31:09


--------------------
:)
Go to the top of the page
+Quote Post
nexis
post 10.05.2009, 21:32:42
Post #6





Grupa: Zarejestrowani
Postów: 1 012
Pomógł: 109
Dołączył: 26.09.2003
Skąd: nexis.pl

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


Kod
INSERT INTO `uzytkownicy` (
    `login`,
    `pasword`,
    `email`,
    `gg`,
    `www`,
    `ip`,
    `rang`,
    `ile`,
    `dateon`,
    `token`,
    `zweryfikowany`
) VALUES (
    '$konto',
    '$password',
    '$email',
    '$gg',
    '$www',
    '$ip',
    'Register',
    '0',
    'date',
    '$los1',
    'Nie'
);


a do generowania haseł proponuję następujące rozwiązanie

  1. <?php
  2. function generate($length = 8) {
  3.    $symbols  = '1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM';
  4.    $count    = strlen($symbols)-1;
  5.    $password = null;
  6.    for ($i = 0; $i <= $length; $i++) {
  7.        $password .= $symbols[rand(0, $count)];
  8.    }
  9.    return $password;
  10. }
  11.  
  12. $los1 = generate(60);
  13. ?>


Ten post edytował nexis 10.05.2009, 21:35:57


--------------------
Zend Certified Engineer

Kliknij POMÓGŁ jeśli moja odpowiedź okazała się użyteczna!
Go to the top of the page
+Quote Post

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: 5.07.2025 - 16:32