Datensatz aus DB verändern
Jojo
- php
0 Finalplayer_Ryu0 FraFu0 Finalplayer_Ryu0 FraFu
0 FraFu
Hallo, würde gern nach Ablauf eines bestimmten Vorgranges ein Feld in einer anderen Tabelle auf "2" setzten, was vorher auf "1" steht.
Hab ein wenig gegooglet und fand diese Lösung:
mysql_select_db("datenbank", "Update tabelle set feld='2' WHERE EAN='" . $_REQUEST['EAN_'.$i] . "' && seriennummer='" . $_REQUEST['seriennummer_'.$i] . "'");
------------
( Die Werte hab ich natürlich angepasst ( db, tabelle, feld nur zur veranschaulichung hier geändert)
Doch leider kommt bei mir die Fehlermeldung :Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource
Woran liegts? Bzw gibt es eine andere Lösung ?
Gruß
mysql_select_db("datenbank", "Update tabelle set feld='2' WHERE EAN='" . $_REQUEST['EAN_'.$i] . "' && seriennummer='" . $_REQUEST['seriennummer_'.$i] . "'");
Ganz als erstes darfst du in SQL-Statements nicht "&&" verwenden sondern "AND". Zweitens, wenn du Nummern abfragst dann muss dies so aussehen:
EAN=" . $_REQUEST['EAN_'.$i] . " oder kürzer
EAN=$_REQUEST['EAN_'.$i] also bei nummern keine ' verwenden
Also muss deine query so aussehen:
"Update tabelle set feld=2 WHERE EAN=".$_REQUEST['EAN_'.$i]." AND seriennummer=".$_REQUEST['seriennummer_'.$i]
Hallo!
Ganz als erstes darfst du in SQL-Statements nicht "&&" verwenden sondern "AND".
Nein. MySQL kennt auch && als logischen Operator.
Zweitens, wenn du Nummern abfragst dann muss dies so aussehen:
EAN=" . $_REQUEST['EAN_'.$i] . " oder kürzer
EAN=$_REQUEST['EAN_'.$i] also bei nummern keine ' verwenden
Nochmals nein. Zahlentypen können auch mit Anführungszeichen abgefragt werden.
Das Problem ist, dass mysql_select_db einfach keine SQL Statements ausführt.
mfg
frafu
Nein. MySQL kennt auch && als logischen Operator.
Nochmals nein. Zahlentypen können auch mit Anführungszeichen abgefragt werden.
Nun ja, da ich ein Verfechter der Standardisierung bin, schreibe ich nunmal alle Statements so, wie sie in SQL aussehen würden.
Hallo!
Nun ja, da ich ein Verfechter der Standardisierung bin, schreibe ich nunmal alle Statements so, wie sie in SQL aussehen würden.
Du hast Recht. Die Erweiterung der logischen Operatoren von MySQL ist eigentlich unnötig. Verwirrt nur und macht Migrationen unnötig schwer.
mfg
frafu
Hallo!
mysql_select_db("datenbank", "Update tabelle set feld='2' WHERE EAN='" . $_REQUEST['EAN_'.$i] . "' && seriennummer='" . $_REQUEST['seriennummer_'.$i] . "'");
Doch leider kommt bei mir die Fehlermeldung :Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource
Schau dir nochmal die Doku zu mysql_select_db an. Der Befehl erwartet keinen SQL Befehl, sondern eine MySQL Link resource. Und wie die Fehlermeldung schon sagt, ist der String keine Mysql Link resource.
mfg
frafu