Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHP Login System

Einklappen

Neue Werbung 2019

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

  • [Erledigt] PHP Login System

    Hallo
    Bin dabei ein Login System zu machen für ne kleine Seite.

    Register habe ich:
    Code:
    <h2>Registrieren</h2>
    <br/>
    <form action="?n=register2" method="post">
    <b>Dein Benutzername</b><br/>
    <input type="text" name="username" />
    <br/>
    <br/>
    <b>Deine e-Mail</b><br/>
    <input type="text" name="email" />
    <br/>
    <br/>
    <b>Dein Passwort</b><br/>
    <input type="password" name="passwort" />
    <br/>
    <br/>
    <b>Passwort wiederholen</b><br/>
    <input type="password" name="passwort2" />
    <br/>
    <br/>
    <b>Deine Webseite</b><br/>
    <input type="text" name="webseite"/>
    <br/>
    <br/>
    <b>Dein Twitter Name</b><br/>
    <input type="text" name="twitter" />
    <br/>
    <br/>
    <input type="submit" value="Registrieren">
    </form>
    Und Register:

    PHP-Code:
    <?php

    include('./1_config.php');

    $connect = @mysql_connect($dbHost$dbUser$dbPass) or die("Konnte keine Verbindung zum Datenbankserver aufbauen!");
    $selectDB = @mysql_select_db($dbName$connect) or die("Konnte die Datenbank <b>$dbName</b> nicht auswählen!");

    $username $_POST["username"];
    $email $_POST["email"];
    $passwort $_POST["passwort"];
    $passwort2 $_POST["passwort2"];
    $webseite $_POST["webseite"];
    $twitter $_POST["twitter"];

    if(
    $passwort != $passwort2 OR $username == "" OR $passwort == "" OR $email=="")
        {
        echo 
    "Eingabefehler. Bitte alle Felder korekt ausfüllen. <a href=\"register.php\">Zurück</a>";
        exit;
        }

    $result mysql_query("SELECT id FROM nokes_login WHERE username LIKE '$username'");
    $menge mysql_num_rows($result);

    if(
    $menge == 0)
        {
        
    $eintrag "INSERT INTO nokes_login (`username`, `email`, `passwort`, `webseite`, `twitter`) VALUES ('$username', '$email', '$passwort', '$webseite', '$twitter')";
        
    $eintragen mysql_query($eintrag);
        if(
    $eintragen == true)
            {
            echo 
    "Ihr account mit dem namen <b>$username</b> wurde erstellt. <a href=\"login.php\">Login</a>";
            }
        else
            {
            echo 
    "Es trat ein Fehler auf.Die fehlermeldung wurde geloggt , und der fehler wird so schnell wie möglich behoben. <a href=\"register.php\">Zurück</a>";
            }


        }

    else
        {
        echo 
    "Benutzername schon vorhanden. <a href=\"register.php\">Zurück</a>";
        }
    ?>
    Jedoch kommt immer die Fehler meldung: Es trat ein Fehler auf.Die fehlermeldung wurde geloggt , und der fehler wird so schnell wie möglich behoben.....

    Also wurde anscheinend nichts gesendet. Weiß einer weiter?


  • #2
    $eintrag ausgeben lassen und sehen was dabei rauskommt. Desweiteren würd ich auch noch error_reporting anschalten.
    Was hast das mit Fortgeschritten zu tun ?
    Signatur:
    PHP-Code:
    $s '0048656c6c6f20576f726c64';
    while(
    $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

    Kommentar


    • #3
      ka, ich habe error reporting drinne aber trozdem nichts. Da kommt keine Meldung aus die vom Script.

      Kommentar


      • #4
        $eintrag ausgeben lassen und sehen was dabei rauskommt.
        +
        PHP: mysql_error - Manual
        Signatur:
        PHP-Code:
        $s '0048656c6c6f20576f726c64';
        while(
        $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

        Kommentar


        • #5
          Ich lasse es ausgeben, jedoch kommt noch nichtmal dies zum vorschein.
          komisch denn sonst ging es schonmal, ich werde mich die Tage noch ein wenig mehr darum kümmern.

          Darum erstmal erledigt.

          Kommentar


          • #6
            Du solltest unbedingt die Daten, die dir übers Formular übergeben wurden per PHP filtern.

            Z.b. mit Magic Quotes, sonst könnte ein Angreifer in deinem INSERT SQL Kommando "böse" SQL Kommandos (z.B. DELETE, TRUNCATE, etc...) ausführen.

            LG Joseph

            Kommentar


            • #7
              und immer hübsch weiter arbeiten mit @ ... ^^
              Zitat:
              "Jedoch kommt immer die Fehler meldung: Es trat ein Fehler auf.Die fehlermeldung wurde geloggt , und der fehler wird so schnell wie möglich behoben..... "

              wenn diese selbst generierte Fehlermeldung kommt, dann kannst du doch auch weitere Debug-Echos machen ...

              zumindest echo $eintrag."<br/>";
              sollte dir was ausgeben ....

              und ich würde ja mal die if-Abfrage zu $eintragen umdrehen ...
              PHP-Code:
              if ($eintragen!==FALSE
              "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

              Kommentar


              • #8
                Zitat von eagle275 Beitrag anzeigen
                PHP-Code:
                if ($eintragen!==FALSE
                Ist das jetzt auf diesen Fall bezogen oder generell? Also macht es einen Unterschied ob

                PHP-Code:
                if ($eintragen!==FALSE
                oder

                PHP-Code:
                if ($eintragen===TRUE
                wenn man true oder false erwartet.

                LG Sonic

                Kommentar


                • #9
                  Eure guten Absichten in Ehren, aber das Thema ist bereits über 2 Monate alt.

                  Und im Fortgeschrittenen-Bereich definitiv falsch. Daher jetzt still und leise:

                  [MOD: Thread verschoben]
                  http://hallophp.de

                  Kommentar

                  Lädt...
                  X