PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Werte nach Update anzeigen


nightflasher
10.09.2003, 15:34:25
Hi,

ich habe mal wieder ein little Problem....



UPDATE `KDDATA` SET `lock` = 'YES' WHERE `lock` = '' LIMIT 1

Soweit so gut...
Damit ändere ich den Wert einer Zeile die im Feld 'lock' keinen
Wert hat. (Diese benutze ich um den nächsten Kunden zu ermitteln und
Ihn zu sperren)

Das Problem....

Wie ermittle ich nun diese Zeile bzw. den Kunden "ohne" vorher noch eine ID schreiben zu müssen ???

Gruß,
Helge

Ted
27.01.2004, 04:44:18
was willst du mit einer tabelle in der nur lock true oder lock false drinsteht, noch ein tipp, ich wuerde lock nicht auf empty sondern auf null setzen, das entspricht false in php und braucht keine uebersetzung nur ein if(variable in der lock steht)

NanoCyte
27.01.2004, 18:00:10
du änderst ja den ersten datensatz den du kriegen kannst und sonst keinen
also musst einfach VOR die update-anweisung folgendes schreiben:
$res = mysql_query("SELECT id FROM `KDDATA` WHERE `lock` = '' LIMIT 1");
$row = mysql_fetch_object($res);
echo $row->id;
mysql_query("UPDATE `KDDATA` SET `lock` = 'YES' WHERE `lock` = '' LIMIT 1");
damit hast du die id ausgegeben!

edit: geht natürlich auch nur auf mysql einfach (einfach php weglassen):
SELECT id FROM `KDDATA` WHERE `lock` = '' LIMIT 1
UPDATE `KDDATA` SET `lock` = 'YES' WHERE `lock` = '' LIMIT 1