MySQL Hilfe benötigt!

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • MySQL Hilfe benötigt!

    Hallo,
    ich habe mich mit MySQL noch gar nicht (0) auseinandergesetzt und will den Schritt jetzt wagen!

    Mein "Script":

    PHP-Quellcode

    1. <?php
    2. define('SQL_HOST', 'localhost');
    3. define('SQL_USER', 'ryandany_xxx');
    4. define('SQL_PASS', 'zensiert');
    5. define('SQL_DB', 'wcf1_user');
    6. $password = mysql_escape_string($_POST['password']);
    7. $username = mysql_escape_string($_POST['username']);
    8. $conn = @mysql_connect(SQL_HOST,SQL_USER,SQL_PASS);
    9. mysql_select_db(SQL_DB);
    10. $sql = "SELECT `userID` FROM `wcf1_user` WHERE `username` like '$username'";
    11. $result = mysql_query($sql, $board);
    12. if(mysql_num_rows($result) < 1)
    13. {
    14. echo "Falscher Name";
    15. }
    16. else
    17. {
    18. $_SESSION['ucp_userID'] = $data['userID'];
    19. $_SESSION['ucp_username'] = $data['username'];
    20. $data = mysql_fetch_assoc($result);
    21. $userID = $data['userID'];
    22. $sql = "SELECT `userID`, `username` FROM `wcf1_user` WHERE `userID` = $userID AND `password` = sha1(concat(salt,sha1(concat(salt,sha1('$password'))))) LIMIT 1;";
    23. }
    24. ?>
    Alles anzeigen


    Ich habe manches kopiert bzgl. MySQL, da ich keinen Durchblick habe, also zumindest noch nicht so ganz ...
    Ich möchte eigentlich mich nur einloggen und dann die SESSION setzen, die Tabelle ect. ist angelegt.

    Grüße.
    "Das müsste jetzt funktionieren..."

    ---
    Mit freundlichen Grüßen,
    Vincent Petritz
  • Warum "like" heißt so viel wie "Wie" :> xD

    musse direkt "where" benutzen..

    ich würde es so machen:

    PHP-Quellcode

    1. $qq = sprintf("SELECT * FROM wcf1_user where username = '%s'", $username);
    2. $result = mysql_query($qq);
    3. if($result && mysql_result($result,0,'WieDeinPasswortFeldheisst') == $password) {
    4. //Aktionen wie Session etc. also:
    5. //$_SESSION['ucp_userID'] = $data['userID'];
    6. //$_SESSION['ucp_username'] = $data['username'];
    7. }

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von VaY ()

  • Du wirst so jedenfalls immer Error bekommen.

    Du verwendest die Funktion mysql_real_escape_string() braucht eine bestehende Verbindung zu einer Da bevor du eine Verbindung zur Datenbank aufbaust. So bekommst du entweder einen Error oder die Funktion verabschiedet sich mit einer Warnung und ist ansonsten vollkommen nutzlos.

    Merke: mysql_real_escape_string() benötigt eine bestehende Datenbankverbindung um arbeiten zu können.

    php.net/manual/de/function.mysql-real-escape-string.php
    [tabmenu]
    [tab='Werbung in eigener Sache']
    Du suchst einen Instant Messenger dessen Verbindung voll verschlüsselt ist? Weiterhin soll er mit anderen Instant Massenging Protokollen verknüpfbar sein? Außerdem möchtest du weltweit erreichbar sein (ähnlich icq und msn)? - Dann schick mir Post und erhalte ein unverbindliches, auf alle Fälle kostenloses, Angebot:
    [Blockierte Grafik: http://easy-scripting.net/icon/vCollection/pmEmptyS.png]
    [tab='Vorstellung']
    NurPech
    [tab='meine Tutorials']
    [subtab='C#']

    [subtab='PHP']

    [/tabmenu]

    Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von [Blockierte Grafik: http://i.creativecommons.org/l/by-nc-nd/3.0/80x15.png] verwendet werden
  • PHP-Quellcode

    1. <?php
    2. session_start();
    3. define('SQL_HOST', 'localhost');
    4. define('SQL_USER', 'ryandany_xxx');
    5. define('SQL_PASS', 'ZENSIERT');
    6. define('SQL_DB', 'wcf1_user');
    7. $conn = @mysql_connect(SQL_HOST,SQL_USER,SQL_PASS);
    8. mysql_select_db(SQL_DB);
    9. function getSaltedHash($value, $salt) {
    10. $hash .= $salt;
    11. $hash .= encrypt($value);
    12. $hash .= $salt;
    13. return encrypt($hash);
    14. }
    15. function getDoubleSaltedHash($value, $salt) {
    16. return encrypt($salt . getSaltedHash($value, $salt));
    17. }
    18. function encrypt($value) {
    19. return sha1($value);
    20. }
    21. $password = mysql_escape_string($_POST['password']);
    22. $username = mysql_escape_string($_POST['username']);
    23. $sql = "SELECT `userID` FROM `wcf1_user` WHERE `username` = ".$username;
    24. $result = mysql_query($sql);
    25. if(mysql_num_rows($result) == 0)
    26. {
    27. echo "Falscher Name!";
    28. }
    29. else
    30. {
    31. while($data = mysql_fetch_array($result)) {
    32. $_SESSION['ucp_userID'] = $data['userID'];
    33. $_SESSION['ucp_username'] = $data['username'];
    34. $salt = $data['salt'];
    35. $password = getDoubleSaltedHash($password, $salt);
    36. $sql = "SELECT `userID`, `username` FROM `wcf1_user`
    37. WHERE
    38. `userID` = $userID
    39. AND
    40. `password` = ".$password." LIMIT 1;";
    41. }
    42. }
    43. ?>
    Alles anzeigen
    [tabmenu]
    [tab='Werbung in eigener Sache']
    Du suchst einen Instant Messenger dessen Verbindung voll verschlüsselt ist? Weiterhin soll er mit anderen Instant Massenging Protokollen verknüpfbar sein? Außerdem möchtest du weltweit erreichbar sein (ähnlich icq und msn)? - Dann schick mir Post und erhalte ein unverbindliches, auf alle Fälle kostenloses, Angebot:
    [Blockierte Grafik: http://easy-scripting.net/icon/vCollection/pmEmptyS.png]
    [tab='Vorstellung']
    NurPech
    [tab='meine Tutorials']
    [subtab='C#']

    [subtab='PHP']

    [/tabmenu]

    Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von [Blockierte Grafik: http://i.creativecommons.org/l/by-nc-nd/3.0/80x15.png] verwendet werden

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von NurPech ()