Ankündigung

Einklappen
Keine Ankündigung bisher.

Login Problem

Einklappen

Neue Werbung 2019

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

  • Login Problem

    Hi Leute,

    also, ich habe ein Loginfenster indem man sich halt einloggen kann wenn man registriert ist oder falls man nicht registriert ist kann man sich in einem anderen formular registrieren. Die Benutzer die sich registriert haben, werden dann von mir in die Datenbank eingetragen.
    Nun meine frage:
    Wie mache ich es, das beim login geguckt wird, ob der name bzw. das passwort mit dem man versucht sich einzuloggen überhaupt als user in der datenbank existiert ?

    Die zugehörige Tabelle heist "user" und die spalten heisen: name,vorname,benutzername ,email und passwort.

    Das Loginformular sieht im moment noch so aus:
    Code:
    <h4 style="text-decoration:underline;font-size:17px;" class="login1">Login:</h4> <form method="login.php" action="get"> <p class="login">Benutzername:
     <input name="name" type="text" size="20px">
    </p> <span class="login">Passwort:
     <input name="pw" type="password" size="20px">
    </span> 
    
    <input name="login" type="submit" value="Login"> <span style="font-family:verdana;font-size:9px;"> (Registrieren)</span></p> </form>
    Ich hoffe mir kann jemand helfen.

  • #2
    Indem du die Datenbank fragst... Hmmm. entweder ist das ein Irrläufer und gehört in PHP-Anfänger oder ich bin zu müde um zu verstehen, wo dein Problem liegt.

    P.S.: Im Anfänger-Forum gibt es ein Sticky, wo auch einige nützliche Links zu Tutorials drin stehen...

    Kommentar


    • #3
      http://faq-phpfriend.de/ch/ch-database_mysql.html

      und wen ndu dann noch nicht weiter weißt einfach die ganze Seite von anfang an durcharbeiten ..

      @Mod => move 2 Anfänger plz

      Kommentar


      • #4
        Oh, sorry fürs falsche Forum. Ich habe in der Zeit folgendes zusammen gewerkelt.

        PHP-Code:
        <?
        $sql = "SELECT Benutzername, Passwort FROM user WHERE Benutzername = ($_POST['name']) AND Passwort = ($_POST['pw'])";
        $query = mysql_query($sql);
        $num = mysql_num_rows($query);

        $result = mysql_fetch_assoc($query);
          if ($num == 1) print 'User vorhanden
        ';
          if ($result['benutzername'] == $_POST['name'] AND $_POST['pw'] == $result['passwort']) print 'Login korrekt
        ';
          if ($result['benutzername'] != $_POST['name']) print 'Username ist falsch
        ';
          if ($_POST['pw'] != $result['passwort']) print 'Passwort ist falsch
        '; 
        ?>
        Aber leider kommt beim Ausführen des Scripts folgender Fehler:
        Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\Programme\xampp\htdocs\Page\login.php on line 2
        Es sei noch zu erwähnen, das ich in sachen mysql totales neuland betrete und mit php auch gerade erst anfange.
        Ich hoffe diesmal kann ich auf etwas bessere hilfe ziehlen.

        Kommentar


        • #5
          PHP-Code:
          <?php
          $sql 
          "SELECT Benutzername, Passwort FROM user WHERE Benutzername = (".$_POST['name'].") AND Passwort = (".$_POST['pw'].")";
          ?>
          mal so versuchen?

          Kommentar


          • #6
            Dann kommt folgender Fehler:

            Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in D:\Programme\xampp\htdocs\Page\login.php on line 3

            Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in D:\Programme\xampp\htdocs\Page\login.php on line 3

            Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\Programme\xampp\htdocs\Page\login.php on line 4

            Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in D:\Programme\xampp\htdocs\Page\login.php on line 6
            Login korrekt

            Kommentar


            • #7
              na ja:

              Code:
              Access denied for user 'ODBC'@'localhost' (using password: NO)
              sollte klar sein, du hast keine Zugriffsrechte um auf die Datenbank zugreifen zu dürfen/können.

              na ja schau mal das du die Login Daten richtig eingibst, dann müssten die anderen Fehler von selbst verschwinden.

              mehr infos dazu: http://de.php.net/manual/de/function.mysql-connect.php

              Kommentar


              • #8
                Ja, hatte ne falsche verlinkung aber folgender fehler bleibt:
                Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\Programme\xampp\htdocs\Page\login.php on line 8

                Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in D:\Programme\xampp\htdocs\Page\login.php on line 10
                So sieht das script nun aus:
                PHP-Code:
                <?
                $user = "chicky";
                $password = "*";
                $host = "localhost";
                $dbh = mysql_connect($host, $user, $password);
                $sql = "SELECT Benutzername, Passwort FROM user WHERE Benutzername = '".$_POST['name']."' AND Passwort = '".$_POST['pw']."'";
                $query = mysql_query($sql);
                $num = mysql_num_rows($query);

                $result = mysql_fetch_assoc($query);
                  if ($num == 1) print 'User vorhanden
                ';
                  if ($result['benutzername'] == $_POST['name'] AND $_POST['pw'] == $result['passwort']) print 'Login korrekt
                ';
                  if ($result['benutzername'] != $_POST['name']) print 'Username ist falsch
                ';
                  if ($_POST['pw'] != $result['passwort']) print 'Passwort ist falsch
                '; 
                ?>

                Kommentar


                • #9
                  ich weiss nicht ob es daran liegt, aber versuch mal nach dem connect eine DB auszuwählen mit:

                  http://de.php.net/manual/de/function...-select-db.php

                  Kommentar


                  • #10
                    Jo, danke daran lag es

                    Kommentar


                    • #11
                      Die Fehlermeldung lag aber vielmehr daran, dass Du Dich überhaupt nicht darum gekümmert hast, ob mysql_query() ein Ergebnis geliefert hat.

                      Das solltest Du auf jeden Fall tun.
                      Z. B. so:

                      mysql_query( ... ) or die (mysql_error());

                      Kommentar

                      Lädt...
                      X