Bonjour à tous.
Je suis en train de réaliser un outil en php mysql.
Je suis face au problème suivant :

j'ai un appel d'une page PHP (appel effectué via AJAX en asynchrone) qui effectue un très longue requête (plus d'une minute). J'aimerais que si l'utilisateur le souhaite, il puisse interrompre l'exécution de cette requête via un autre appel Ajax. Pour l'instant la solution implémentée est la suivante
(en pseudo code

* Appel du premier script php via AJAX. Le script effectue:
- SELECT connection_id() AS connection_id
- enregistrement de connection_id dans la SESSION
- grosse requête qui prend longtemps

* Instant donné, l'utilisateur clique sur un bouton qui lance un appel via AJAX du deuxième script. Le script effectue
- récupération de la variable $connection_id dans la session
- KILL QUERY $connection_id

Le problème est que le deuxième script attends toujours la fin du premier script pour être exécuté. J'ai inséré des instructions de reporting (error_log) et me suis aperçu que tant que le premier script n'a pas terminé sa requête, alors le deuxième script ne s'exécute pas. J'aimerais savoir comment puis-je régler ce problème (peut-être ma solution n'est pas la bonne)

Une chose cepandant: lorsque j'interromps ma requête à l'aide d'un outil client sql (donc sans passer par un script php) alors la pas de soucis...

Merci de votre lecture

Guillaume