Db Abfrage von Password, dann schauen ob PW das StandardPW ist

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Db Abfrage von Password, dann schauen ob PW das StandardPW ist

    Moin,

    hab eine DB mit der Table Users und in der sind die User von mir eingetragen worden. Dabei gab ich ein Standardpasswort allen Usern.

    Nun muss eine Aufforderung beim Anmelden kommen, dass ein neues PW einzugeben ist.

    Ich dachte mir das vom Code her so (nach erfolgreichem Login)
    PHP-Code:
            $stdpw "
                SELECT
                    UserPass
                FROM
                    users
                WHERE
                    UserSession='"
    .session_id()."'";
                     
    $result mysql_query($stdpw) OR die(mysql_error());
                     
                
    $oldpw 'aa0ee93ca1f1d9606ddb4a93eb6bfa4b';
                if(
    $stdpw != $oldpw)
                       {
                            
    $menu 'auth'
                       }
                else
                       {
                            
    $menu 'stdpw';
                          } 
    Die PWs sind MD5 Verschlüsselt, ich geb daher den MD5 Wert an.

    Mein Fehler liegt sicher schon beim Abfragen des Passwords. Er packt es ja nicht direkt als Variable irgendwo hin, sondern speichert seine Ergebnistabelle in $stdpw , oder?
    Wie macht man es richtig?
    Zuletzt geändert von mardin; 01.08.2006, 12:27.

  • #2
    Wie macht man es richtig?
    Deine Standard-Passwort-Geschichte halte ich für eine schlechte Idee!

    Alternativ:
    Man läßt den User selbst sein Passwort eintragen.
    Und schickt ihm eine Mail mit einem Link, damit er
    seine Anmeldung bestätigen kann.

    Oder man generiert automatisch ein Passwort
    und schickt ihm das per Mail. Ähnlich einer
    Passwort-vergessen-Funktion.

    Einen einfachen Passwortgenerator könnte ich auf
    Wunsch hier publizieren.
    Zuletzt geändert von combie; 01.08.2006, 12:49.
    Wir werden alle sterben

    Kommentar


    • #3
      Den Code vom PasswordGenerator kannst du gerne posten.

      Leider ist mein Chef sehr engstirnig. Ich müsste es schon so in der Art Umsetzen wie im Headpost und vorallem schnell.

      Mein Problem ist, dass ich nicht direkt ein Feld aus der Tabelle auslesen kann. Ich sag genau welche Reihe in der Tabelle (anhand der Session ID) und brauch dazu den Inhalt des Feldes UserPW als Variable.


      Warum kann ich das nicht?

      Über deine Idee denke ich aber auch noch nach, ich kann mir aber nicht vorstellen, dass es dadurch leichter /schneller wird.

      Kommentar


      • #4
        PHP-Code:
        $row mysql_fetch_assoc($result);
        echo 
        $row['UserPass']; 
        dir fehlen Grundlagen in mysql!

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Original geschrieben von ghostgambler
          PHP-Code:
          $row mysql_fetch_assoc($result);
          echo 
          $row['UserPass']; 
          dir fehlen Grundlagen in mysql!
          Ja, und nicht nur da.

          Wie muss ich das jetzt in meinen Code integrieren? Kannst du dafür noch kurz was schreiben. Mein Code steht ja im Headpost.

          Wäre supper. Und ich versprech mein SQL Buch (noch aus Ausbildungszeiten) mal "wieder" zu benutzen.

          Kommentar


          • #6
            Ok, ich habs selbst integrieren können. Das Ergebnis sieht nun so aus:
            PHP-Code:
                    $stdpw "
                        SELECT
                            UserPass
                        FROM
                            users
                        WHERE
                            UserSession='"
            .session_id()."'";
                             
            $result mysql_query($stdpw) OR die(mysql_error());
                             
            $row mysql_fetch_assoc($result);
                             
            $oldpw $row['UserPass'];

                        if(
            $oldpw != "aa0ee93ca1f1d9606ddb4a93eb6bfa4b")
                               {
                                    
            $menu 'auth'
                               }
                        else
                               {
                                    
            $menu 'stdpw';
                                  } 
            Ich danke euch.

            Hat vielleicht einer eine gute MySql Webseite mit Erläuterungen im Hinterkopf? Ich würde mich gern weiterbilden..

            Kommentar


            • #7
              Hat vielleicht einer eine gute MySql Webseite mit Erläuterungen im Hinterkopf?
              mysql.org
              oder google

              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Kommentar

              Lädt...
              X