Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
last_insert_id bei Mehrfachzugriff [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
last_insert_id bei Mehrfachzugriff


 
Tock
01-08-2002, 16:34 
 
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?

 
Berni
01-08-2002, 16:50 
 
nein! Da die Last ID zu einem SQL-Handle gehört.

 
Tock
01-08-2002, 16:52 
 
was kann ich denn machen um mir sicher zu sein wenn Sessionmanagement auch noch flach fällt. Gibt es da eine Lösung?

 
Berni
01-08-2002, 16:56 
 
emm ich verstehe jetzt nicht ganz was du möchtest

:goth:

 
Tock
01-08-2002, 17:05 
 
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.

 
Berni
01-08-2002, 17:08 
 
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

 
Tock
01-08-2002, 17:11 
 
Ich danke dir :)

 
Radium2k
06-08-2002, 07:37 
 
könnte mir jemand mal ein beispiel posten wie dan so eine abfrage mit der insert id aussieht ?

 
tj99de
06-08-2002, 09:23 
 
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

 
Radium2k
06-08-2002, 09:44 
 
danke


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:32 Uhr.