Depuis une migration vers apache 2 / php 5.3 / mysql 5.1.37, j'ai un problème que je ne m'explique pas ( Mon site fonctionnait parfaitement sous apache 1 et php4 )
A l'ouverture du site si l'utilisateur n'est pas identifié j'affiche un formulaire login/mot de passe je vérifie dans la bdd si les infos saisies sont correctes puis je les stock dans la session. Pour les ouverture de page suivantes, je fais une vérification silencieuse de ces infos (reselect dans la bdd depuis les informations de session ). ca fonctionne bien. je peux aller de page en page sans limitation ( donc php se connecte a mysql, il envoie les requetes il récupère les résultats tout est ok ).
Par contre, si je tente de me logger une deuxième fois via le même formulaire ( après avoir cliquer sur un "deconnection" ), je ne peux plus rien faire avec mysql : mysql_connect() semble fonctionner, mais des la premiere requête la réponse n'arrive jamais. c'est à dire le navigateur affiche "en attente de la réponse de ....", pendant longtemps longtemps jusqu'a planter dans un timeout.
je sais que ce n'est pas du a php puisque j'ai placer des die('xxx') petit a petit dans le script jusqu'à repérer l'endroit précis du problème et c'est bien la fonction mysql_query la dernière instruction utilisée.
j'utilise pconnect ou connect : aucun changement. d'ailleurs je n'ai aucun retour ni warning ni error pour ces fonctions.
j'ai essayer de remplacer la requete par une autre bcp plus simple, pareil.
j'avais des tables innodb je les ai mis en myisam j'ai optimiser flusher, defragmenter, analiser. enfin tout. aucune changement.
Qq'un a t il une idée ?
Partager