MYSQL PHP

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Dodo.

    hi,
    Was ist an diesem code falsch?

    PHP-Quellcode

    1. <?php
    2. $username=$_GET['Email'];
    3. $password=$_GET['Password'];
    4. mysql_connect("localhost", "user", "passwort");
    5. mysql_select_db("my******");
    6. //begin the query
    7. $sql = mysql_query("SELECT * FROM Users WHERE Email = '".$username."' AND password = '".$password."' LIMIT 1");
    8. //check to see how many rows were returned
    9. $rows = mysql_num_rows($sql);
    10. if ($rows<=0 )
    11. {
    12. echo "Incorrect username/password";
    13. }
    14. else
    15. {
    16. echo "Right";
    17. }
    18. ?>

    ich habe mich schon ewig im internet umgeschaut aber nichts gefunden!?
    er gibt immer "Incorrect username/password"
    vb-anonym :thumbup: :thumbsup:

    Edit by hal2000:
    - Hat nichts mit VB zutun
    --> Thema verschoben

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „hal2000“ ()

    Nun zum ersten ist der PHP Code hier im VB Forum falsch.

    Dann um Fehler im QueryString auszuloten gibt es eine schöne Funktion indem einfach folgendes hinten dran hängst

    PHP-Quellcode

    1. $sql = mysql_query("SELECT * FROM Users WHERE Email = '".$username."' AND password = '".$password."' LIMIT 1") or die (mysql_error());


    Das wirft dann nämlich eine SQL Exception aus mit dem Fehler den SQL nicht interpretieren kann.
    Zwei kleine Tips noch, die aber elementar wichtig sind.
    1. Mach dich mal über SQL Injections schlau und wie man diese verhindert
    2. werden Passwörter NIEMALS im Klartext in der SQL Datenbank gespeichert, das eine riesen Sicherheitslücke. Passwörter immer mit einem zusätzlichen eigenen Key Hashen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Dodo“ ()

    Nun google mal nach SQL Injection, das bloß eine Funktion an die man die Parameter die man über Post bekommt schicken muss damit diese Escaped werden.

    Und was du falsch machst, nun ließ dir mal ganz laut die Funktion vor an die dein QueryString schickst bzw. die Reihenfolge =)