Ich hab' da mal ne Frage.
Kann ich mir sicher sein, dass mysql_insert_id auch wirklich die richtige id findet wenn auf meinen Seiten 10 Personen gleichzeitig einen Datensatz eingeben? Kann es da zu Verwechslungen kommen?
nein! Da die Last ID zu einem SQL-Handle gehört.
was kann ich denn machen um mir sicher zu sein wenn Sessionmanagement auch noch flach fällt. Gibt es da eine Lösung?
emm ich verstehe jetzt nicht ganz was du möchtest
:goth:
hmm..
ich habe 2 Tabellen. Auf meiner php-Oberfläche kann man nun Daten eingeben. Ein Teil der Daten wird in die erste Tabelle geschrieben und der andere Teil der Daten in die zweite Tabelle.
Diese Tabellen sollen jetzt über die auto_increment der Tabelle eins verknüpft sein. D.h. ich muss die gleiche id von Tabelle eins die per auto_increment erzeugt wurde in die Tabelle zwei speichern. Soweit so gut. Da bietet sich mysql_insert_id an.
Wenn jetzt 10 Personen auf dieses Formular zugreifen und die Daten gleichzeitig abschicken habe ich die Befürchtung, dass da was durcheinander kommen kann. Dass die Datensätze nachher nicht mehr korrekt verknüpft sind.
Meine Frage zielte darauf hin ob mysql_insert_id die zuletzt geinserte id von der entsprechenden Person bekommt zu der die auch gehört oder überhaupt die zuletzt geinserte id. :confused:
ähmm... ich hoffe man versteht mich noch :D
Ich muss mir nur 100% sicher sein.
mysql_insert_id liefert dir die ID von der jeweiligen Person.
Was du vor hast, kannst du so machen ohne das du befürchten musst, das eine falsch ID übergeben wird.
hgruß
berni
Radium2k
06-08-2002, 07:37
könnte mir jemand mal ein beispiel posten wie dan so eine abfrage mit der insert id aussieht ?
Du erzeugst einfach einen ganz normalen SQL-Befehl zum einfügen von Daten und rufst danach den PHP-Befehl mysql_insert_id(linkhandler) auf.
Also zum Beispiel so, du speicherst die ID der der aktuellen Datenbankverbindung in $connection.
mysql_query("INSERT INTO user(name,pass) VALUES('$name','$pass')");
$id=mysql_insert_id($connection);
So, jetzt hast Du die ID des von dir eingetragenen Datensatzes in $id gespeichert und kannst damit weiter arbeiten.
cu tj99de
PS: Ich hoffe ich hab nicht wieder nen Syntaxfehler drin