Probleme mit Mysql-UPDATE per PHP-Befehl

reichs

Grünschnabel
Hallo,
ich habe bei mir ein Problem, wenn ich in einem PHP-Skript einen UPDATE in einer DB durchführen will. Es Funktioniert zwar jetzt, aber die Fhlermeldung kommt immer noch.

PHP:
$sql = " UPDATE dateinamen SET `titel`='Titel1' WHERE `ID`='3' ";
$result = mysql_query($sql);
mysql_free_result($result);

Die Fehlermeldung:
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\changeorder\changeorder.php on line 19

Ich hatte erst versucht, in die Variable $sql mehrere UPDATE-Zeilen einzufügen, aber das funktioniert dann auch gar nicht mehr. Also z.B.:
PHP:
$sql = " UPDATE dateinamen SET `titel`='Titel1' WHERE `ID`='3' UPDATE dateinamen SET `titel`='Titel3' WHERE `ID`='5' ";

Wo liegt jetzt mein Fhler in der Syntax? In phpmyadmin wird mir gar kein Fehler angezeigt.

Grüße
Stefan
 
hm, verstehe ich trotzdem nicht. Wo ist denn da jetzt genau mein Fehler. Der muss ja eig. irgendwo in der Sytax von Befehl liegen, oder?
 
der Fehler liegt einfach daran, das $result keinen Speicher belegt und wo nichts belegt wird, kann auch nichts gelöscht werden
 
Also, wenn [phpf]mysql_query[/phpf] keine geeignete Ressource zurückliefert, dann ist das Query fehlgeschlagen. [phpf]mysql_error[/phpf] gibt dir dann eine passende Fehlermeldung aus.

Weiterhin führt [phpf]mysql_query[/phpf] immer nur ein Query aus! Was ich auch sinnvoll finde. Braucht man im seltenen Fall wirklich multiple Queries mit einem Aufruf, gibt es mit MySQLi die Methode multi_query()
 
Danke für die schnelle Hilfe.
Ist es irgendwie möglich, mehrere UPDATE-Befehle mit einem mal abzuschicken. Bei mir funktioniert das leider auch nicht. Müssten da dann Semikolons verwendet werden oder nicht?
 
auch phpmyadmin splitte mehrere Befehle zu einzelnen und führt sie einzeln aus.

Wenn die ID alle zahlen sind, kannst du ja mit einer for-Schleife arbeiten
 
Zurück