kostenloser Webspace werbefrei: lima-city


Unbekannter Fehler bei einer Registrierungs Funktion

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

    Hallo,

    Ich bekomme ein Ungekannten Fehler bei einem Anmelde Script.

    Ich hab den Selbst zusammen gescriptet aber jetzt funktioniert dieser nicht mehr.

    Hier ist der

    <?php
    if(!isset($_POST['submit'])) { 
    echo '<form action="?page=anmelden" method="post">
    <table width="400px" bgcolor="#000000" border="0" cellpadding="5" cellspacing="1" align="center">
    <tr>
    <td bgcolor="#EAEAEA" align="center" colspan="2">
    <b>Neuen Benutzer anlegen</b>
    </td>
    </tr>
    <tr>
    <td width="170" bgcolor="#EAEAEA">Benutzername</td>
    <td width="230" bgcolor="#FFFFFF"><input type="text" name="username" class="input"';
    if($_POST['username'] != "") { echo ' value="'.$_POST['username'].'"'; }
    echo 'size="20"></td>
    </tr>
    <tr>
    <td width="170" bgcolor="#EAEAEA">eMail</td>
    <td width="230" bgcolor="#FFFFFF"><input type="text" name="mail" size="20" class="input"></td>
    </tr>
    <tr>
    <td width="170" bgcolor="#EAEAEA">Passwort</td>
    <td width="230" bgcolor="#FFFFFF"><input type="password" name="password" size="20" class="input"></td>
    </tr>
    <tr>
    <td width="170" bgcolor="#EAEAEA">Passwort wiederholen</td>
    <td width="230" bgcolor="#FFFFFF"><input type="password" name="password2" size="20" class="input"></td>
    </tr>
    <tr>
    <td bgcolor="#EAEAEA" align="center" colspan="2">
    <input type="submit" name="submit" value="Benutzer anlegen" class="button">
    </td>
    </tr>
    </table>
    </form>';
    
    }elseif(!isset($_POST['username']) || $_POST['username'] == ""){
    echo '<p align="center">Du hast den Benutzernamen vergessen!<br><br><a href="?page=anmelden">Zurück</a></p>';
    }elseif(!isset($_POST['mail']) || $_POST['mail'] == ""){
    echo '<p align="center">Bitte gebe eine eMail an, damit wir dir eine eMail mit den Daten schicken k&ouml;nnen.<br><br><a href="?page=anmelden">Zurück</a></p>';
    }elseif(!isset($_POST['password']) || $_POST['password'] == "") {
    echo '<p align="center">Ein Passwort brauchen wir schon ;-)<br><br><a href="?page=anmelden">Zurück</a></p>';
    }elseif($_POST['password'] != $_POST['password2']) {
    echo '<form action="?page=anmelden" method="post">';
    echo '<p align="center">Die Passw&ouml;rter sind nicht gleich, bitte &uuml;berpr&uuml;fe sie.<br><br>';
    echo '<input type="hidden" name="username" value="'.$_POST['username'].'">';
    echo '<input type="submit" name="zurueck" value="Zurück"></p>';
    echo '</form>';
    }else{
    $query = @mysql_query("SELECT user FROM user_".$digit." WHERE user = '".$_POST['username']."'");
    $result = @mysql_fetch_array($query);
    if($_POST['username'] == $result['user']) {
    echo '<p align="center">Den Benutzernamen gibt es schon in der Community!<br><br><a href="?page=anmelden">Zurück</a></p>';
    die;
    }else{
    $username = $_POST['username']; 
    $mail = $_POST['mail'];
    $pass = $_POST['password'];
    $datum = date("j.n.Y");
    if($insert = @mysql_query("INSERT INTO `user_".$digit."` SET user = '$username', pass = '$pass', mail = '$mail', regdatum = '$date'")) {
    $header="From $mail\n\n";
    $email_betreff= "Anmeldung in unserer Community";
    $kommentar= "Willkommen in unserer Community\n\nUsername: $username\nPasswort: ".$_POST['password']."\n\nWir w&uuml;nschen dir noch viel Spa&szlig; in unserer Community\n\n" ;
    mail($mail,$email_betreff,$kommentar,$header);
    echo '<p align="center">Der neue Benutzer wurde erfolgreich angelegt!<br><br><a href="index.php">Zurück zur Startseite</a></p>';
    }else{
    echo '<p align="center">Beim Anlegen des neuen Benutzers trat leider ein Fehler auf!<br><br><a href="?page=anmelden">Zurück</a></p>';
    }
    }
    }
    ?>



    Könnt ihr mir bitte nur Erklären was Falsch ist?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Was ist ein unbekannter Fehler?

    Beitrag zuletzt geändert: 7.12.2009 22:09:22 von karpfen
  4. Autor dieses Themas

    privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

    Ein unbekannter Fehler ist ein Fehler der sich nicht zu erkennen gibt.

    Also in dem Fall wurde immer die Letzte zeile mit dem else angezeigt.

    Und wenn ich diese zeile Entferne gibt es ein Parse Error in der Letzten Zeile.

    Wieso weiß ich nicht.


    Edit: Seit wann ist die Register Global Funktion Veraltet?



    Beitrag zuletzt geändert: 7.12.2009 22:12:37 von privatecitypage
  5. Gibts einen Link dazu, wo man sich das mal anschauen kann?
  6. Autor dieses Themas

    privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

  7. Du musst diese Zeile überprüfen, denn dort wird der Wert false zurückgegeben:

    if($insert = @mysql_query("INSERT INTO `user_".$digit."` SET user = '$username', pass = '$pass', mail = '$mail', regdatum = '$date'"))


    Und deshalb dann die Else-Anweisung ausgeführt. Am besten mal alle Variablen ausgeben sowie den SQL-Query und schauen, wo da der Fehler ist.
  8. Autor dieses Themas

    privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

    Mein Eig. Befehl heißt


    if($insert = @mysql_query("INSERT INTO `user_".$digit."` SET user = '$username', pass = '$pass', mail = '$mail', regdatum = '$date'"))



    Ist das richtig?

    Hab bis jetzt nur mit SELECT/UPDATE und DELETE Gearbeitet. INSERT hab ich noch nie gemacht.


  9. Ob das logisch richtig ist, keine Ahnung, deshalb sollst du ja mal die Variablen ausgeben und überprüfen ob das ein SQL-syntaktisch richtiger Befehl ist . Ich kenn doch deine Datenbankstruktur nicht. Ich weiss auch nicht, ob Register Global bei dir aktiviert oder nicht ist.


    Beitrag zuletzt geändert: 7.12.2009 22:56:07 von karpfen
  10. bei mysql solltest du immer zur Fehlerbehebung ein
    or die(mysql_error());
    hinter den SQLcode dranhängen.
    Wenn ein Fehler Auftritt wird das script beendet und ein SQl Fehler ausgegeben
  11. Autor dieses Themas

    privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

    Register Global ist bei mir Aktiv aber aus irgend ein Grund Veraltet.


    PHP Version : 5.3.1
    Apache Version 2.2.14
  12. der Fehler ist:
    Field 'id' doesn't have a default value


    da weiß ich leider nicht genau weiter.
    Vllt. hat die Spalte "id" in der Datenbank keinen gültigen wert., vllt. hilft es wenn du beschreibst was "id" bei dir in der db genau ist.


  13. Autor dieses Themas

    privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

    Problem Gefunden.

    Er wusste kein Startart Wert für ID als hat er das Freigelassen und diesen Fehler Code Angezeigt,

    Danke an alle.


    Edit by karpfen: Damit closed!

    Beitrag zuletzt geändert: 8.12.2009 19:02:15 von karpfen
  14. 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!