[MySQL/php] Téléscopage de requêtes
Résolu
wingover
Messages postés
21
Date d'inscription
Statut
Membre
Dernière intervention
-
wingover Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
wingover Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans un script en php, j'ai une fonction query qui envoie une requête MySQL et j'envoie les deux requêtes suivantes à un endroit du script sous une forme qui ressemble à ça:
Je récupère l'id de la première requête (fixé par auto_increment) à l'aide de la fonction LAST_INSERT_ID().
Ma question :
Y a-t il un risque de téléscopage de ces requêtes si deux utilisateurs exécutent chacun ce script exactement en même temps depuis deux sessions différentes ? (Du coup le LAST_INSERT_ID() pour le premier groupe de requêtes serait celui du deuxième).
Réponse à argumenter ;-)
Merci !
Dans un script en php, j'ai une fonction query qui envoie une requête MySQL et j'envoie les deux requêtes suivantes à un endroit du script sous une forme qui ressemble à ça:
query("INSERT INTO table1 (id,name) VALUES ('nom1')"); query("INSERT INTO table2 (id_table1,autre_info) VALUES (LAST_INSERT_ID(),'blabla')");
Je récupère l'id de la première requête (fixé par auto_increment) à l'aide de la fonction LAST_INSERT_ID().
Ma question :
Y a-t il un risque de téléscopage de ces requêtes si deux utilisateurs exécutent chacun ce script exactement en même temps depuis deux sessions différentes ? (Du coup le LAST_INSERT_ID() pour le premier groupe de requêtes serait celui du deuxième).
Réponse à argumenter ;-)
Merci !
A voir également:
- [MySQL/php] Téléscopage de requêtes
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
4 réponses
Bonjour
C'est écrit en toutes lettres dans le manuel de référence de mysql. Ça n'est pas caché dans un recoin, c'est dès le début du paragraphe sur la fonction LAST_INSERT_ID().
Alors, pourquoi avoir posé la question ici ? Réponse à argumenter ;-)
C'est écrit en toutes lettres dans le manuel de référence de mysql. Ça n'est pas caché dans un recoin, c'est dès le début du paragraphe sur la fonction LAST_INSERT_ID().
Alors, pourquoi avoir posé la question ici ? Réponse à argumenter ;-)
Effectivement, il y a marqué ceci dans la doc sur LAST_INSERT_ID() :
Le dernier ID généré est conservé par le serveur pour chaque connexion. Un autre client ne la modifiera donc pas, même s'ils génèrent une autre valeur AUTO_INCREMENT de leur coté. Ce comportement permet de s'assurer que les actions des autres clients ne perturbe pas les actions du client en cours.
La raison de mon doute est la suivante:
Que signifie "un autre client" ? Deux sessions différentes au niveau du serveur sont-elle des clients différents même si elles se connectent en tant que même utilisateur à la base ?
Si oui effectivement il n'y a pas de risque de téléscopage.
Le dernier ID généré est conservé par le serveur pour chaque connexion. Un autre client ne la modifiera donc pas, même s'ils génèrent une autre valeur AUTO_INCREMENT de leur coté. Ce comportement permet de s'assurer que les actions des autres clients ne perturbe pas les actions du client en cours.
La raison de mon doute est la suivante:
Que signifie "un autre client" ? Deux sessions différentes au niveau du serveur sont-elle des clients différents même si elles se connectent en tant que même utilisateur à la base ?
Si oui effectivement il n'y a pas de risque de téléscopage.
Le dernier ID généré est conservé par le serveur pour chaque connexion.. Si deux utilisateurs se connectent avec les mêmes identifiants, il s'agit quand même de deux connexions différentes.
D'ailleurs, dans la plupart des cas, tous les utilisateurs d'un site utilisent les mêmes identifiants. Ce sont ceux codés dans les scripts, et je n'ai encore jamais rencontré ici (mais ça existe sûrement) de gens qui codaient des connexions différemment selon les utilisateurs.
D'ailleurs, dans la plupart des cas, tous les utilisateurs d'un site utilisent les mêmes identifiants. Ce sont ceux codés dans les scripts, et je n'ai encore jamais rencontré ici (mais ça existe sûrement) de gens qui codaient des connexions différemment selon les utilisateurs.
OK Merci Toto, le doute est levé. C'était juste pour être bien sur plutôt que découvrir ça en cours d'utilisation.
Puisque tu m'as l'air bien callé puis-je te suggérer un autre problème un peu plus costaud (toujours en MySQL) ?
http://www.commentcamarche.net/forum/affich 10386321 mysql probleme de jointure?#1
Merci en tous cas pour ton aide.
Puisque tu m'as l'air bien callé puis-je te suggérer un autre problème un peu plus costaud (toujours en MySQL) ?
http://www.commentcamarche.net/forum/affich 10386321 mysql probleme de jointure?#1
Merci en tous cas pour ton aide.