kostenloser Webspace werbefrei: lima-city


Registrierseite falsch?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    salamara

    salamara hat kostenlosen Webspace.

    Guten tag,
    ich habe einen fehler,oder was falsch in meine Text :(
    also wie gesagt möchte ich eine Registrierseite haben bzw. habe ich schon der fehler ist das man wenn man seine daten eingegeben hat
    nicht Registriert ist.
    ich hätte es gerne so das man dann auf der menü seite weitergeleitet bekommt und dann sich immer im Login bereich einloggen kann.
    Hier ist mein momentaner code:

    <html> 
    
    <head> 
    <title>Regist</title> 
    </head> 
    
    <body> 
    <?php 
    
    error_reporting(E_all); 
    $aus = $_POST["reg"]; 
    
    if ($aus == 1) // neue Werte werden in die Datenbank eingefuegt 
    { 
    $ergebnis2 = mysql_query("INSERT INTO tbl_benutzer (username, password, vorname, nachname, email) VALUES ('$db_user', '$db_pw', '$db_vorname', '$db_nachname', '$db_mail')");
     // echo "ergebnis nach INSERT=$ergebnis <br>"; 
    
    } 
    
    <center>
    ?> 
    <h2>Registrieren</h2> 
    <form name="formular" method="post" action=<?php echo $_SERVER['PHP_SELF']?>> 
    Username:<br> 
    <input type="text" name="user" size="25"><br> 
    <br> 
    Passwort:<br> 
    <input type="password" name="passw" size="25"><br> 
    Vorname:<br> 
    <input type="text" name="vorname" size="25"><br> 
    Nachname:<br> 
    <input type="text" name="nachname" size="25"><br> 
    E-mail:<br> 
    <input type="text" name="mail" size="30"><br> 
    <input type="submit" value="Registrieren" action="menu_main.php?id=startseite"> 
    </form> 
    <? 
    </center>
    $db_user = $_POST["user"]; 
    $db_pw = $_POST["passw"]; 
    $db_vorname = $_POST["vorname"]; 
    $db_nachname = $_POST["nachname"]; 
    $db_mail = $_POST["mail"]; 
    
    
    /*while($row = mysql_fetch_assoc($ergebnis)) 
    { 
    $row["username"] = $_POST["user"]; 
    $row["password"] = $_POST["passw"]; 
    $row["vorname"] = $_POST["vorname"]; 
    $row["nachname"] = $_POST["nachname"]; 
    $row["email"] = $_POST["mail"]; 
    }*/ 
    
    ?> 
    
    </body> 
    </html> 
    
    
    
    <?php
    $link = menu_main.php('mysql_host', 'mysql_user', 'mysql_password')
     OR die(mysql_error());
    
    // Anfrage erstellen
    $query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'",
     mysql_real_escape_string($user),
     mysql_real_escape_string($password));
    ?> 
    
    <?php
    // Datenbankabfrage zur Ueberpruefung der Logindaten
    $query = "SELECT * FROM users WHERE user='{$_POST['username']}' AND password='{$_POST['password']}'";
    mysql_query($query);
    
    // Wir haben $_POST['password'] nicht geprueft, es koennte also alles darin
    // stehen, was der User will. Zum Beispiel:
    $_POST['username'] = 'aidan';
    $_POST['password'] = "' OR ''='";
    
    // Das bedeutet, der an MySQL gesendete Query wuerde sein:
    echo $query;
    ?>


    kann mir vllt einer sagen was daran falsch ist? hänge und knappere schon seit paar stunden daran weiß aber leider nicht weiter.
    Würde mich über jede hilfe freuen.

    Mfg Salamara
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. <head> 
    <title>Regist</title> 
    </head> 
    
    <body> 
    <?php 
    
    error_reporting(E_all); 
    $aus = $_POST["reg"]; 
    
    if ($aus == 1) // neue Werte werden in die Datenbank eingefuegt
    { 
    $ergebnis2 = mysql_query("INSERT INTO tbl_benutzer (username, password, vorname, nachname, email) VALUES ('$db_user', '$db_pw', '$db_vorname', '$db_nachname', '$db_mail')");
     // echo "ergebnis nach INSERT=$ergebnis <br>"; 
    
    } 
    
    <center>
    ?> 
    <h2>Registrieren</h2> 
    <form name="formular" method="post" action=<?php echo $_SERVER['PHP_SELF']?>> 
    Username:<br> 
    <input type="text" name="user" size="25"><br> 
    <br> 
    Passwort:<br> 
    <input type="password" name="passw" size="25"><br> 
    Vorname:<br> 
    <input type="text" name="vorname" size="25"><br> 
    Nachname:<br> 
    <input type="text" name="nachname" size="25"><br> 
    E-mail:<br> 
    <input type="text" name="mail" size="30"><br> 
    <input type="submit" value="Registrieren" action="menu_main.php?id=startseite"> 
    </form> 
    <? 
    </center>
    $db_user = $_POST["user"]; 
    $db_pw = $_POST["passw"]; 
    $db_vorname = $_POST["vorname"]; 
    $db_nachname = $_POST["nachname"]; 
    $db_mail = $_POST["mail"]; 
    
    
    /*while($row = mysql_fetch_assoc($ergebnis)) 
    { 
    $row["username"] = $_POST["user"]; 
    $row["password"] = $_POST["passw"]; 
    $row["vorname"] = $_POST["vorname"]; 
    $row["nachname"] = $_POST["nachname"]; 
    $row["email"] = $_POST["mail"]; 
    }*/ 
    
    ?> 
    
    </body> 
    </html> 
    
    
    
    <?php
    $link = menu_main.php('mysql_host', 'mysql_user', 'mysql_password')
     OR die(mysql_error());
    
    // Anfrage erstellen
    $query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'",
     mysql_real_escape_string($user),
     mysql_real_escape_string($password));
    ?> 
    
    <?php
    // Datenbankabfrage zur Ueberpruefung der Logindaten
    $query = "SELECT * FROM users WHERE user='{$_POST['username']}' AND password='{$_POST['password']}'";
    mysql_query($query);
    
    // Wir haben $_POST['password'] nicht geprueft, es koennte also alles darin
    // stehen, was der User will. Zum Beispiel:
    $_POST['username'] = 'aidan';
    $_POST['password'] = "' OR ''='";
    
    // Das bedeutet, der an MySQL gesendete Query wuerde sein:
    echo $query;
    ?>


    also erstmal dein Problem: du fragst ab, ob das Feld reg 1 ist. Nur leider existiert dieses Feld nicht, also kann diese Variable nicht 1 sein.

    Ansonsten:

    action=<?php echo $_SERVER['PHP_SELF']?>

    da würde ich am besten hinter der Variable ein Semikolon setzen, und das ganze in " setzen, also:
    action="<?php echo $_SERVER['PHP_SELF'];?>"

    ansonsten kommt mir das noch spanisch vor:
    $link = menu_main.php('mysql_host', 'mysql_user', 'mysql_password')
    OR die(mysql_error());

    Ich kann leider kein Spanisch, soll das so sein?
  4. Autor dieses Themas

    salamara

    salamara hat kostenlosen Webspace.

    Hi nochmal,
    also erstmal zu meinem Problem wegen reg 1 das werde ich sofort umändern, ;)

    und das andere wo soll ich denn code hinsetzen?

    also diser code:
    action="<?php echo $_SERVER['PHP_SELF'];?>"

    ich weiß ich eine blöde frage nur leider habe ich momentan ein blackout,

    und zu 3 das ist vollkommen richtig das gehöhrt eig. nicht dahin habe denn code geschrieben und google gefragt warum es nicht geht und die haben mir diesen code gesagt

    $link = menu_main.php('mysql_host', 'mysql_user', 'mysql_password')
    OR die(mysql_error());

    Mfg Salamara
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!