Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2643 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  acces concurentiel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

acces concurentiel

n°387302
xilebo
noone
Posté le 08-05-2003 à 17:52:11  profilanswer
 

salut,
 
j ai un code en gros ca donne ca :
 

Code :
  1. function insert($val) {
  2. $requete = "INSERT INTO TABLE1 (champ1,champ2) values ($val,2);";
  3. mysql_query($requete,$connexion);
  4. $result = mysql_insert_id();
  5. return $result;
  6. }


 
il se passe quoi si 2 personnes appellent cette fonction en meme temps et que l ordre d appel des fonctions donne :
 
 
mysql_query user1
mysql_query user2
mysql_insert_id user2
mysql_insert_id user1
 
ca veut dire que user2 aura l ID de la ligne de user 1 et vice versa
 
 
c pas cool
 
 
comment peut on remedier a ca ?  
 
merci

mood
Publicité
Posté le 08-05-2003 à 17:52:11  profilanswer
 

n°387308
RiderCrazy
Posté le 08-05-2003 à 18:02:01  profilanswer
 

y'a de l'embrouille la... je vois comment ca peut donner ce que tu dit ton truc.

n°387309
mrbebert
Posté le 08-05-2003 à 18:04:27  profilanswer
 

mysql_insert_id() est lié à une connexion. Si tu scripts PHP font des insertions, ils utiliseront chacun leur propre connexion à la base, donc ne se mélangeront pas leur LAST_INSERT_ID() (ce que renvoie en fait mysql_insert_id()) :)

n°387312
simogeo
j'ai jamais tué de chats, ...
Posté le 08-05-2003 à 18:17:10  profilanswer
 

mrBebert a écrit :

mysql_insert_id() est lié à une connexion. Si tu scripts PHP font des insertions, ils utiliseront chacun leur propre connexion à la base, donc ne se mélangeront pas leur LAST_INSERT_ID() (ce que renvoie en fait mysql_insert_id()) :)  


 
pas si sûr que toi ... par prudence, je passerai l'identifiant de connexion en paramètre.  :)


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°387315
xilebo
noone
Posté le 08-05-2003 à 18:20:42  profilanswer
 

ok merci en fait ca donne ca :
 

Code :
  1. function insert($val) {
  2. $requete = "INSERT INTO TABLE1 (champ1,champ2) values ($val,2);";
  3. mysql_query($requete,$connexion);
  4. $result = mysql_insert_id($connexion);
  5. return $result;
  6. }


 
 
mysql_query connexion1
mysql_query connexion2
mysql_insert_id connexion2
mysql_insert_id connexion1
 
 
donc la pas de pb ;-)  
 
 
merci encore !!!

n°387319
mrbebert
Posté le 08-05-2003 à 18:26:16  profilanswer
 

simogeo a écrit :

pas si sûr que toi ... par prudence, je passerai l'identifiant de connexion en paramètre.  :)  

J'en suis sur et certain. 2 scripts PHP n'utilisent pas la même connexion à la base de données, donc ne se mélangeront pas leurs LAST_INSERT_ID().
 
Ce qui est défférent du cas où 1 script utilise 2 connexions vers 2 bases de données différentes.

n°387321
simogeo
j'ai jamais tué de chats, ...
Posté le 08-05-2003 à 18:29:21  profilanswer
 

mrBebert a écrit :

J'en suis sur et certain. 2 scripts PHP n'utilisent pas la même connexion à la base de données, donc ne se mélangeront pas leurs LAST_INSERT_ID().
 
Ce qui est défférent du cas où 1 script utilise 2 connexions vers 2 bases de données différentes.


 
ah oui exact  :), (désolé pour le doute)


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  acces concurentiel

 

Sujets relatifs
acces depuis internet a mon serveur apache[C/C++] Thread et accès à une variable par 2 threads en même temps...
Acces port serie, comment faire, big probleme INSIDE !Acces htaccess
limiter les accès au PC en lançant une applicationplaceholder et acces aux controles
comment désactivé la roulette sous acces ?[C embarqué] différence entre un accès I/O et accès mémoire.
Acces à une bdd Mysql en C++en php/mysql avoir accés à 1 base de donnée sur 1 autre hébergement?
Plus de sujets relatifs à : acces concurentiel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR