phpbar.de logo

Mailinglisten-Archive

[php] mysql_insert_id() nicht bei mehreren Connections?

[php] mysql_insert_id() nicht bei mehreren Connections?

Egon Schmid (_(at)_work) eschmid_(at)_php.net
Mon, 14 Aug 2000 17:14:24 +0200


Matthias Jim Knopf wrote:

>     Ich hab ein komisches Problem: Ich verwende in einer  Web-Seite
>  die php-funktion mysql_insert_id(), die laut Doku  in  der  Syntax
>  zwar einen optionalen Parameter hat,
> 
> mysql_insert_id (int [link_identifier]);

Das muss ein Handbuch vom letzten Jahrhundert sein. In diesem
Jahrhundert schreibt man das so:

int mysql_insert_id ([int link_identifier])

Dieser Funktionsprototype sagt, dass der link_identifier optional ist.
Wenn er angegeben wird, dann sollte er vom Typ her ein Integer sein.
 
> drunter steht jedoch:
> "...This function takes no arguments."

So kann man optionale Argumente auch umschreiben. Das Handbuch hat
meistens recht.
 
> Nun gut, es funktionierte ja auch prima ohne Parameter.
>     Nun hat ein Kollege von mir in die gleiche Seite  ein  weiteres
>  PHP-Script vor meins eingefuegt, was eine  weitere  (ganz  andere)
>  MySQL-Verbindung aufbaut, und schon  funktioniert  obige  Funktion
>  GARNICHT MEHR, sondern liefert  trotz  erfolgreichem  INSERT-query
>  nur eine "0"  zurueck!  Auch  mit  dem  richtigen  MySQL-Link  als
>  Parameter funktioniert es nicht, auch nicht  mit  dem  Result  des
>  mysql_query().
>     Ich weiss nicht mehr weiter! Im Archiv hab  ich  gesehen,  dass
>  schonmal jemand ein Problem mit dieser Funktion hatte, er  hat  es
>  auf PHP4 geschoben, weil es unter  PHP3  funktioniert...  doch  da
>  kam wohl keine weiter Mail zu diesem Thread! Kann ich auch nix  zu
>  sagen, ausser, dass ich selber PHP4 verwende, aber  wenn  ich  nur
>  eine einzige mysql-verbindung habe, funktioniert es, wie es soll!

Es funktioniert in mehreren Skripten wenn man das optionale Argument
weglässt. Probleme gibt es nur, wenn man einen Link_Identifier angibt.

-Egon

-- 
SIX Offene Systeme GmbH · Stuttgart  -  Berlin  -  New York
Sielminger Straße 63   ·    D-70771 Leinfelden-Echterdingen
Fon +49 711 9909164 · Fax +49 711 9909199 http://www.six.de


php::bar PHP Wiki   -   Listenarchive