Ankündigung

Einklappen
Keine Ankündigung bisher.

Update Befehl klappt nicht

Einklappen

Neue Werbung 2019

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

  • Gast-Avatar
    Ein Gast erstellte das Thema Update Befehl klappt nicht.

    Update Befehl klappt nicht

    So wie ich ihn geschrieben habe, klappt er nicht, bei Schattenbaum und tut.php-q.net konnte ich mir keine Hilfe verschaffen. Was ist an meinem Code falsch?

    Code:
    $sql3 = "
        UPDATE
        	Mon_Biester,
        	Mon_Items
        SET
    	Item_Anzahl = Item_Anzahl - 1,
    	Biest_Zutraulichkeit = Biest_Zutraulichkeit + $var_item_zutraulichkeit
        WHERE
    	   Mon_Items.Item_UserNr = $User_ID 
       	   && Mon_Biester.Verbindung = $User_ID
    	   && Mon_Items.Item_Nummer = $var_item_nummer
    	   && Mon_Biester.Biest_Nummer = $var_biest_nummer";
    
    $result3 = mysql_query($sql3) OR die(mysql_error());
    if(mysql_num_rows($result3)) {
            while($row = mysql_fetch_assoc($result3)) {
    
    
    echo '<p align="center">Itemanzahl: '.$row['Item_Anzahl'].'</p>';}}

  • Gast-Avatar
    Ein Gast antwortete
    So danke für eure Hilfe, mein Problem ist glöst! Ich musste einen neuen SELECT Befehl einfügen jetzt klappt alles!

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Code:
    $sql4 = "
        UPDATE
        	Mon_Biester
        SET
    	Biest_Zutraulichkeit = Biest_Zutraulichkeit + $var_item_zutraulichkeit
        WHERE
    	Verbindung = $User_ID
    	AND Biest_Nummer = $var_biest_nummer";
    
    $result4 = mysql_query($sql4) OR die(mysql_error());
    if(mysql_num_rows($result4)) {
            while($row = mysql_fetch_assoc($result4)) {
    
    
    echo '<p align="center">Zutraulichkeit: '.$row['Biest_Zutraulichkeit'].'</p>';
    $var_mon_zutraulichkeit = $row['Biest_Zutraulichkeit'];
    ;}}
    der Code

    Einen Kommentar schreiben:


  • Guradia
    antwortet
    Die Query(|ies) auf denen die beiden jeweils aufbauen haben wohl einen Fehler, den du noch per mysql_error() abfangen müsstest.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Ja das Relikt hab ich entfernt!

    jetzt sagt mir MySQL dass ein Argument nicht valid(?) ist. Was genau bedeutet diese Fehlermeldung?. Ja ich kann englisch ich gebe mir auch Mühe, doch die Fehlermeldungen meinen meißtens ganz andere Dinge als die die ich herausinterpretiere.

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/www/web13/html/Webbiest/use_item.php on line 73

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/www/web13/html/Webbiest/use_item.php on line 89

    Einen Kommentar schreiben:


  • Guradia
    antwortet
    Zitat von Lioba
    Code:
    $sql3 = "
        UPDATE
        	Mon_Items
        SET
    	Item_Anzahl = Item_Anzahl - 1,
        WHERE
    	   Item_UserNr = $User_ID 
    	   && Item_Nummer = $var_item_nummer";
    
    $result3 = mysql_query($sql3) OR die(mysql_error());
    Es erscheint diese Fehlermeldung:
    You have an error in your SQL syntax near 'WHERE Item_UserNr = 1 && Item_Nummer = 1' at line 6
    [/quote]

    Hups . da waren wohl mal mehrere SETs .. da ist noch ein , als Relikt übrig geblieben .. ^^

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von Lioba
    Nach diesem Schema wollte ich ja auch den UPDATE Befehl machen, aber das haut immer noch nicht hin, selbst wenn ich es so schreibe:
    Code:
    $sql3 = "
        UPDATE
        	Mon_Items
        SET
    	Item_Anzahl = Item_Anzahl - 1, # <-- das Komma muß weg!
        WHERE
    	   Item_UserNr = $User_ID 
    	   && Item_Nummer = $var_item_nummer";

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    a: frage mich gerade, was ein SELECT nun mit dem UPDATE zu tun hat ...
    Da habe ich die gleichen Verbindunegn benutzt (&&) Damit wollte ich zeigen, dass dieses System klappt. Mir war nicht klar, dass es bei einem UPDATE Befehl nicht funktioniert.

    b: das SELECT hat ja auch mit dem ausgespuckten Fehler nix am Hut*?!*
    Bei diesem SELECT habe ich das gleiche System verwendet, meiner Meinung nach, ist es einfacher && zu benutzen weil ich dachte dass man bei AND Klammern nehmen muss. Ok es hat sich als falsch rausgestellt, wie du in deinem Code beweist.

    d: ich bin mir auch nicht sicher, was du da mit dem SELECT für Daten ziehen willst. [...]
    Mit diesem SELECT hole ich mir die Infos über die Items, die Anzahl der Items, und die Biester der User(ich weiß nicht, wie ich das anders erklären soll ). Der SELECT Befehl klappt auch ohne weiteres ich habe ihn nur als Beispiel gepostet. Nach diesem Schema wollte ich ja auch den UPDATE Befehl machen, aber das haut immer noch nicht hin, selbst wenn ich es so schreibe:

    Code:
    $sql3 = "
        UPDATE
        	Mon_Items
        SET
    	Item_Anzahl = Item_Anzahl - 1,
        WHERE
    	   Item_UserNr = $User_ID 
    	   && Item_Nummer = $var_item_nummer";
    
    $result3 = mysql_query($sql3) OR die(mysql_error());
    Es erscheint diese Fehlermeldung:
    You have an error in your SQL syntax near 'WHERE Item_UserNr = 1 && Item_Nummer = 1' at line 6[/quote]

    Einen Kommentar schreiben:


  • Guradia
    antwortet
    a: frage mich gerade, was ein SELECT nun mit dem UPDATE zu tun hat ...
    b: das SELECT hat ja auch mit dem ausgespuckten Fehler nix am Hut*?!*
    c: Ja .. && geht .. ist aber un-SQLisch:
    Code:
    $sql2 = "
    SELECT  *
    
    FROM    Mon_Itemliste,
            Mon_Items,
            Mon_Biester    
        
    WHERE   Mon_Itemliste.Item_ID = $var_item_nummer
        AND Item_UserNr = $User_ID
        AND Mon_Biester.Biest_Nummer = $var_biest_nummer
        
    ORDER
        BY  Item_ID
    ";
    d: ich bin mir auch nicht sicher, was du da mit dem SELECT für Daten ziehen willst. Wollte eigetnlich ein JOIN aus den Tabellenverbindungen machen .. bis ich dann merkte, dass die Tabellen offensichtlich nicht in Bezug zueinander genommen werden ...

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    hm, also irgednein nettes forumsmitglied hat mir folgendes vorgeschlagen, was auch funktioniert hat:
    $sql2 = "SELECT
    *
    FROM
    Mon_Itemliste,
    Mon_Items,
    Mon_Biester
    WHERE
    Mon_Itemliste.Item_ID = $var_item_nummer && Item_UserNr = $User_ID &&
    Mon_Biester.Biest_Nummer = $var_biest_nummer
    ORDER BY
    Item_ID
    ";

    $result2 = mysql_query($sql2) OR die(mysql_error());
    Diese vielen && Verbindungen klappen fehlerfrei, warum sollten sie bei einem Update nicht funktionieren?

    Und hier ist die Fehlermeldung:
    You have an error in your SQL syntax near ' Mon_Items SET Mon_Items.Item_Anzahl = Item_Anzahl - 1, Mon_Biest' at line 3

    Einen Kommentar schreiben:


  • Guradia
    antwortet
    Wie DarkManX anspricht: MySQL ünterstützt Queries dieser Art nicht

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    hmm,
    also wie du es machst, sehe ich es zum ersten mal. ich mache immer einen extra mysql_query() für jede tabelle.

    Code:
    $update = mysql_query("UPDATE $db_tabelle Set username = '$neuer_name' WHERE id = '$_POST[id]'");
    $update = mysql_query("UPDATE $db_tabelle2 Set nachname = '$neuer_nachname' WHERE id = '$_POST[id]'");
    habe jetzt einfach so irgend was mit namen gemacht. also so mache ich es immer.

    mfg
    DarkManX

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    hi lioba,

    was erhälst du für ne fehlermeldung?

    ich bin mir frei aus dem kopf nicht sicher .. aber ändere doch mal die && in AND ..

    ne fehlermeldung würde aber weiterhelfen

    Einen Kommentar schreiben:

Lädt...
X