problem mit mysql_fetch_object()

Diskutiere mit über: problem mit mysql_fetch_object() im Web-Programmierung Forum

  1. cni

    cni Thread Starter MacUser Mitglied

    Beiträge:
    27
    Zustimmungen:
    0
    Registriert seit:
    14.10.2004
    hallo zusammen

    ich bin php am lernen und bin am verzweifeln.
    kann mir jemand helden, bekomme diesen fehler

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /moskqpeq/www.mosser.ch/mcdonald/form.php on line 15


    das ist der coder


    <?

    anmelden($fertig, $user, $password1, $password2, $email);

    function anmelden ($fertig, $user, $password1, $password2, $email)
    {
    include("config.php");

    if($fertig) {
    $abfrage1 = mysql_query("SELECT user FROM login");
    while ($row = mysql_fetch_object($abfrage1)) {
    if ($row->user==$user) {
    echo "Dieser Benutzer existiert schon!";
    exit;
    }
    }
    if ($user=="" OR $password1=="" OR $password2=="" or $email=="") {
    echo "Sie haben mindestens ein Feld nicht ausgefüllt!";
    }
    else if ($password1!=$password2) {
    echo "Ihr Passwort ist ungleich Ihrer Wiederholung!";
    }
    else {
    $anfuegen=mysql_query("INSERT INTO login (user, password, email) VALUES ('$user','$password1', '$email')");
    echo "Erfolgreich angemeldet! Sie können sich nun einloggen:<br>";
    @login();
    }
    }
    else {
    echo "<h2>Anmelden</h2>";
    echo "<form method=\"POST\" action=\"$PHP_SELF?anmelden=yes&fertig=yes\">";
    ?>
    <table cellspacing="1" cellpadding="2" border="0">
    <tr>
    <td><font size="2">Benutzername:</font></td>
    <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
    </tr>
    <tr>
    <td><font size="2">Passwort:</font></td>
    <td><font size="2"><input type="password" name="password1" value=""></font></td>
    </tr>
    <tr>
    <td><font size="2">Wiederholen:</font></td>
    <td><font size="2"><input type="password" name="password2" value=""></font></td>
    </tr>
    <tr>
    <td><font size="2">E-Mail:</font></td>
    <td><font size="2"><input type="text" name="email" value="">&nbsp;</font></td>
    </tr>
    <tr>
    <td colspan=2 align=center><input type=submit value=Anmelden></td>
    </tr>
    </table>
    </form>
    <?
    }

    }
    ?>

    danke
     
  2. aguilera

    aguilera MacUser Mitglied

    Beiträge:
    48
    Zustimmungen:
    0
    Registriert seit:
    09.03.2004
    Bei Dir steht:
    $abfrage1 = mysql_query("SELECT user FROM login");
    while ($row = mysql_fetch_object($abfrage1)
    ...

    Es muss heissen:
    $result = mysql_query($abfrage1);
    $row = mysql_fetch_object($result);

    http://de3.php.net/mysql_fetch_object
    ist Dein Freund.

    Gruesse
    agui
     
  3. cni

    cni Thread Starter MacUser Mitglied

    Beiträge:
    27
    Zustimmungen:
    0
    Registriert seit:
    14.10.2004
    hallo aguilera

    und wie weiss er wohin er hin muss. also ich meine zu db
    $abfrage1 = mysql_query("SELECT user FROM login");
     
  4. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    Zudem solltest du diese Zeile...

    anmelden($fertig, $user, $password1, $password2, $email);

    ....unter die Funktion anmelden() {} schreiben, da php diese funktion ganz oben noch nicht kennt, da sie erst dadrunter deklariert wird.
     
  5. cni

    cni Thread Starter MacUser Mitglied

    Beiträge:
    27
    Zustimmungen:
    0
    Registriert seit:
    14.10.2004
    hallo thommy

    das habe ich auch gemacht. ich habe nun das gemacht was ihr geschriebe habt, jedoch ohne erfolg.

    fehler

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /moskqpeq/www.mosser.ch/mcdonald/form.php on line 11
     
  6. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    Registriert seit:
    24.09.2003
    Noch ein kleiner Hinweis:
    Wenn Du das ganze peim Posten innerhalb der PHP-Tags einbindest, wird es deutlich einfacher lesbar.
    Einrückungen bleiben dann auch erhalten.
    Du machst es damit Dir und anderen einfacher, den Code zu lesen.
    Beispiel:
    PHP:
    <?
        
    anmelden($fertig$user$password1$password2$email);

        function 
    anmelden ($fertig$user$password1$password2$email)
        {
            include(
    "config.php");
            if(
    $fertig) {
                
    $abfrage1 mysql_query("SELECT user FROM login");
                while (
    $row mysql_fetch_object($abfrage1)) {
                    if (
    $row->user==$user) {
                        echo 
    "Dieser Benutzer existiert schon!";
                        exit;
                    }
                }
    [...]
    ?>
     
    Zuletzt bearbeitet: 11.01.2005
  7. cni

    cni Thread Starter MacUser Mitglied

    Beiträge:
    27
    Zustimmungen:
    0
    Registriert seit:
    14.10.2004
    ja natürlich, sorry, also ich poste mal den ganzen code nochmal mit der hoffning das mir jemand weiterhelfen kann

    PHP:
    <?

    //anmelden($fertig, $user, $password1, $password2, $email);

    function anmelden ($fertig$user$password1$password2$email)
    {
    include(
    "config.php");

    if(
    $fertig) {
     
    $result mysql_query($abfrage1);
     while (
    $row mysql_fetch_object($result)) {
    // $abfrage1 = mysql_query("SELECT user FROM login");
     //while ($row = mysql_fetch_object($abfrage1)) {
        
    if    ($row->user==$user) {
        echo 
    "Dieser Benutzer existiert schon!";
        exit;
        }
        }
        if (
    $user=="" OR $password1=="" OR $password2=="" or $email=="") {
        echo 
    "Sie haben mindestens ein Feld nicht ausgefüllt!";
        }
        else if (
    $password1!=$password2) {
        echo 
    "Ihr Passwort ist ungleich Ihrer Wiederholung!";
        }
        else {    
        
    $anfuegen=mysql_query("INSERT INTO login (user, password, email) VALUES ('$user','$password1', '$email')");    
        echo 
    "Erfolgreich angemelde
        t! Sie können sich nun einloggen:<br>"
    ;
        @
    login();    
        }
    }
    else {
        echo 
    "<h2>Anmelden</h2>";
        echo 
    "<form method=\"POST\" action=\"$PHP_SELF?anmelden=yes&fertig=yes\">";
        
    ?>
        <table cellspacing="1" cellpadding="2" border="0">
        <tr>
        <td><font size="2">Benutzername:</font></td>
        <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
      </tr>
      <tr>
        <td><font size="2">Passwort:</font></td>
        <td><font size="2"><input type="password" name="password1" value=""></font></td>
      </tr>
      <tr>
        <td><font size="2">Wiederholen:</font></td>
        <td><font size="2"><input type="password" name="password2" value=""></font></td>
      </tr>
      <tr>
        <td><font size="2">E-Mail:</font></td>
        <td><font size="2"><input type="text" name="email" value="">&nbsp;</font></td>
      </tr>
      <tr>
        <td colspan=2 align=center><input type=submit value=Anmelden></td>
      </tr>
    </table>
    </form>
    <? 
    }

    }


    anmelden($fertig, $user, $password1, $password2, $email);
    ?>
     
  8. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    Registriert seit:
    24.09.2003
    Der Fehler befindet sich vermutlich in der "config.php", die Du einbindest.
    In dem geposteten Code kommt "mysql_fetch_object()" ja gar nicht vor.
     
  9. aguilera

    aguilera MacUser Mitglied

    Beiträge:
    48
    Zustimmungen:
    0
    Registriert seit:
    09.03.2004
    Man macht vorher ein mysql_select_db("NAME").

    Kuckst Du hier:
    http://de3.php.net/mysql
     
  10. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    Registriert seit:
    24.09.2003
    Der Fehler befindet sich vermutlich in der "config.php", die Du einbindest.
    In dem geposteten Code kommt "mysql_fetch_object()" ja gar nicht vor.
     
Die Seite wird geladen...
Ähnliche Themen - problem mysql_fetch_object() Forum Datum
XAMPP Problem mit Zugriffsrechte Web-Programmierung 30.04.2014
Syntax Problem PHP Variable an JS-Funktion Web-Programmierung 12.09.2013
Swiftmailer Problem mit der Danke-Seite Web-Programmierung 03.07.2013
PHP anfänger Problem Web-Programmierung 17.05.2013
Problem mit Klassen und protected... Web-Programmierung 04.03.2013

Diese Seite empfehlen

Benutzerdefinierte Suche