php-mysql problem



  • Hi,

    ich habe folgendes problem:
    wenn ich über php folgende MySQL-Anfrage stelle

    UPDATE newspics SET nid=10, position=1, title='111' WHERE id=5;UPDATE newspics SET nid=10, position=2, title='222' WHERE id=6;

    wird der folgende Fehler angezeigt:

    MySQL Error: 1064 (You have an error in your SQL syntax near ';UPDATE newspics SET nid=10, position=2, title='222' WHERE id=6' at line 1)

    gebe ich genau den gleichen Query wie oben (copy & paste) auf der console ein, funktionierts 😕

    Hat irgendwer eine Idee warum???

    [ Dieser Beitrag wurde am 12.03.2003 um 20:16 Uhr von Locke editiert. ]



  • newspics in Hochkomma?



  • nee funzt auch nicht 😞

    der Tabellenname darf glaube ich auch nicht in Hochkommas.
    Das tut so auch auf der Console nicht mehr.

    Die Anzahl der Queries in einem String sollte doch eigentlich egal sein oder?



  • WHERE id=6' steht in deiner fehlermeldung

    oben steht aber WHERE id=6 ? ' ?
    stimmen alle deine hochkommadingsdabumsdasse (warum eigentlich mal mit und mal ohne?)



  • Mach halt immer nur einen MySQL-Befehl 😉



  • Der Fehler ist.

    Du versuchts 2 Statments auf einmal zu senden. Das geht nicht da es kein gültiger SQLString ist.

    =5;UPDATE
    syntax near ';UPDATE

    In der Console mit den Programm mysql geht es deshalb da hier jedes Staement mit ";" abgeschlossen und an den MYSQLD übergeben wird. Und dann kommt das nächste.

    Vergleichbar ist es mit der konsole wenn du ";" wegläßt und nur zum schluss schreibst. Dann wird auch versucht beie UPDATES an den MYSQLD zu übergeben.

    Das nächstemal schreib bitte den ganzen PHP-Source um dies auch besser zu sehen.
    Die anderen haben gedacht das du ein Statement nach dem anderen übergibst.
    Die Statements sind Grundsätzlich richtig allerdings halte dich an die Hochkommas.

    flenders:

    😡 :p 😉 😃

    Ne sekunden zu spät

    [ Dieser Beitrag wurde am 12.03.2003 um 21:02 Uhr von Unix-Tom editiert. ]



  • Hi,

    die Werte in Hochkommas sind Inhalte von Text-Feldern.
    Das letzte Hochkomma schließt den Auszug aus der Fehlermeldung ab den MySQL aus dem Original-Query einfügt (gehöhrt zu ';).
    Ausserdem kann das ja auch so falsch nicht sein, weil es in der Console funzt ...

    Edit: Ooops sorry, war ich wohl zu langsam ...

    [ Dieser Beitrag wurde am 12.03.2003 um 21:06 Uhr von Locke editiert. ]


Anmelden zum Antworten