Keresés

Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz Speeedfire #8818 üzenetére

    Na ezt a kódot inkább nem kellett volna...

    Sorban, amit csak elsőre észrevettem, így még tuti lehetnek benne hibák:
    $jelszo1 = $_POST['jelszo1'];
    eleve ez az ugyanolyan nevű változónak átadás, meg az, hogy nem is csekkolja, létezik-e egyáltalán a $_POST tömbben a 'jelszo1' kulcson valami, vagy még el sincs küldve ez az érték.
    Ezért lehet kapni egy ocsmány notice-t, ha nincs kikapcsolva.
    Meg vegyíteni ilyen durván a magyar nyelvet az angollal szintén nagyon rossz szokás.
    Plusz ez a megoldás:
    $statusz = "OK";
    vagy épp
    $statusz= "HIBA";
    :W
    Ahelyett, hogy mondjuk true, false vagy hasonló, értelmes értékekkel dolgozna.
    Na meg hibakezelésre a kivételkezelés a szép.
    Vannak szimpla szintaktikai hibák is, pl.:
    if (emptyempty($jelszo1))

    Ha hiba van, akkor egyszerűen megjeleníti az üzenetet, majd egy "Vissza" linket, ahelyett, hogy mondjuk a form tetején megjelenítené a hibát.

    Jujj... de csak most látom a legrosszabbat:
    $parancs = mysql_query("INSERT INTO regisztracio (felhasznalo,jelszo,email,regisztralt) VALUES('$felhasznalo','$jelszo','$email',NOW())");
    Nem gáz ám, hogy lazán lehet SQL Injectiont alkalmazni... :W
    Ja, de van egy valosf() függvény, az még előbb lehet, hogy megtalálja, ha nem engedélyezett karakter van benne. De akkor is, ettől a kódtól feláll a szőr a hátamon, abszolúte nem újrafelhasználható, pl. ha ugyanezt valaki kimásolja, és máshol alkalmazza, azt a függvényt meg nem küldi rá korábban, akkor ott van lazán az SQL Injection.

    Aztán a sikeres regisztráció megtörténte után számomra rejtély, hogy mi a büdös francnak rak ki egy "regisztráció" linket, és csak azt.

    Később:
    $belepoid = $_GET['belepoid'];
    Ez már megint ellenőrzés nélkül, plusz nehogy már hozzá legyen csapva az URL-hez a 'belepoid'...

    Vegyük a kilepes.php-t:
    $parancs = "UPDATE regisztracio SET belepoid='' where felhasznalo='$felhasznalo'";
    mysql_query($parancs);
    //OLDAL TARTALMA
    echo"Sikeresen kiléptél.";

    Ez most komoly? :Y
    Úgy léptet ki, hogy a belepoid mező tartalmát üres stringre állítja? :W

    Ez a kód botrányosan szar.
    Ha javasolhatom, ezt többet ne ajánlgasd senkinek referenciaként.

Új hozzászólás Aktív témák

Hirdetés