Ankündigung

Einklappen
Keine Ankündigung bisher.

Register Code

Einklappen

Neue Werbung 2019

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

  • lamopius
    hat ein Thema erstellt Register Code.

    Register Code

    moin moin liebe PHPler,

    ich bau nun schon einige Zeit an meinem Loginscript. Es geht auch soweit alles, bis auf das Registrieren. Denn egal welches Passwort man wählt, in der Datenbank steht immer das gleiche...

    Bitte um Hilfe :P

    hier is der Code von Register.php:

    PHP-Code:
    <?php
    session_start
    ();

     require(
    "connect.php");


      if (
    $_POST['submit'])
      {

        
    $firstname mysql_real_escape_string($_POST['firstname']);
        
    $lastname =              mysql_real_escape_string($_POST['lastname']);
        
    $username =             mysql_real_escape_string($_POST['username']);
        
    $password =             mysql_real_escape_string($_POST['password']);
        
    $password_repeat =      mysql_real_escape_string($_POST['password_repeat']);



        if (
          
    $firstname&&
          
    $lastname&&
          
    $username&&
          
    $password&&
          
    $password_repeat)
        {

            if (
    strlen($firstname)>25 || strlen($lastname)>25 || strlen($username)>25)
            echo 
    "Firstname, Lastname und Username d&uuml;rfen nicht l&auml;nger als 25 Zeichen sein";
             else
             {

               if (
    strlen($password)>25 || strlen($password)<6)
                  echo 
    "Passwort muss zwischen 6 und 25 Zeichen haben!";
                 else
                 {







                               if (
    $password==$password_repeat)
                               {

                    



                                       
    $query mysql_query("SELECT * FROM users WHERE username='$username'");
                                       if (
    mysql_num_rows($query)>=1)
                                            echo 
    "Es gibt schon einen User mit diesem Namen";
                                           else
                                           {
                            
                        
    $password md5(password);        

                                 
    $register mysql_query("INSERT INTO users VALUES ('','$firstname','$lastname','$username','$password')");
                                        echo 
    "JAAA bist da!";

                                           }






                               }
                                else
                                   echo 
    "Passw&ouml;rter m&uuml;ssen gleich sein!";









                 }

             }


        }
         else
           echo 
    "Ein Feld wurde nicht ausgef&uuml;llt!";



      }
       else
         echo 
    "Bitte f&uuml;lle alle Felder mit deinen Daten aus und klicke auf Registrieren!";

     
    ?>

     <form action="register.php" method="post">

      Firstname: <input type="text" name="firstname" value="<?php echo $firstname?>" size="20" maxlength="25" />  <br />
      Lastname: <input type="text" name="lastname" value="<?php echo $lastname?>" size="20" maxlength="25" />  <br />
        Username: <input type="text" name="username" value="<?php echo $username?>" size="20" maxlength="25" />  <br />
          Passwort: <input type="password" name="password" value="" size="20" maxlength="25" />  <br />
    Repeat Passwort: <input type="password" name="password_repeat" value="" size="20" maxlength="25" />  <br />
             <br />
    <input type="Submit" name="submit" value="Register" />



    </form>

  • wernersbacher
    antwortet
    Ich würde meinen Code auf jeden Fall vor SQL Injection schützen

    Einen Kommentar schreiben:


  • lamopius
    antwortet
    ja, der Fehler lag an der DB :P naja eben freehoster^^

    Einen Kommentar schreiben:


  • Hexe
    antwortet
    Was sagt mysql_error() ?

    Einen Kommentar schreiben:


  • lamopius
    antwortet
    ok, danke für die Hilfe, das hab ich nun hinbekommen... doch uhr plötzlich, trägt er keine User mehr in die Datenbank ein:

    PHP-Code:
    <?php
    session_start
    ();

     require(
    "connect.php");


      if (
    $_POST['submit'])
      {

        
    $firstname mysql_real_escape_string($_POST['firstname']);
        
    $lastname =              mysql_real_escape_string($_POST['lastname']);
        
    $username =             mysql_real_escape_string($_POST['username']);
        
    $password =             mysql_real_escape_string($_POST['password']);
        
    $password_repeat =      mysql_real_escape_string($_POST['password_repeat']);



        if (
          
    $firstname&&
          
    $lastname&&
          
    $username&&
          
    $password&&
          
    $password_repeat)
        {

            if (
    strlen($firstname)>25 || strlen($lastname)>25 || strlen($username)>25)
            echo 
    "Firstname, Lastname und Username d&uuml;rfen nicht l&auml;nger als 25 Zeichen sein";
             else
             {

               if (
    strlen($password)>25 || strlen($password)<6)
                  echo 
    "Passwort muss zwischen 6 und 25 Zeichen haben!";
                 else
                 {







                               if (
    $password==$password_repeat)
                               {





                                       
    $query mysql_query("SELECT * FROM users WHERE username='$username'");
                                       if (
    mysql_num_rows($query)>=1)
                                            echo 
    "Es gibt schon einen User mit diesem Namen";
                                           else
                                           {

                        
    $password md5($password);

                                 
    $register mysql_query("INSERT INTO users VALUES ('','$firstname','$lastname','$username','$password')");
                                        echo 
    "JAAA bist da!";

                                           }






                               }
                                else
                                   echo 
    "Passw&ouml;rter m&uuml;ssen gleich sein!";









                 }

             }


        }
         else
           echo 
    "Ein Feld wurde nicht ausgef&uuml;llt!";



      }
       else
         echo 
    "Bitte f&uuml;lle alle Felder mit deinen Daten aus und klicke auf Registrieren!";

     
    ?>

     <form action="register.php" method="post">

      Firstname: <input type="text" name="firstname" value="<?php echo $firstname?>" size="20" maxlength="25" />  <br />
      Lastname: <input type="text" name="lastname" value="<?php echo $lastname?>" size="20" maxlength="25" />  <br />
        Username: <input type="text" name="username" value="<?php echo $username?>" size="20" maxlength="25" />  <br />
          Passwort: <input type="password" name="password" value="" size="20" maxlength="25" />  <br />
    Repeat Passwort: <input type="password" name="password_repeat" value="" size="20" maxlength="25" />  <br />
             <br />
    <input type="Submit" name="submit" value="Register" />



    </form>
    Ich hab keine Ahnung warum. Kann es an meiner Datenbank liegen?

    Einen Kommentar schreiben:


  • litterauspirna
    antwortet
    Schraub mal dein error_reporting voll auf und am besten noch mit E_STRICT, dann bekommst du auch dementsprechende Fehlermeldungen.

    Einen Kommentar schreiben:


  • Hexe
    antwortet
    $password = md5(password);
    Du bildest ja auch immer den gleichen Hash.

    Einen Kommentar schreiben:

Lädt...
X