Page 1 sur 1

Redirection par header après une commande SQL fait ralentir

Posté : 18 avr. 2012, 22:51
par dblais
Bonjour,

J'envois une commande SQL avec mysql_query() et ensuite je redirige le navigateur avec header(). Depuis quelques temps, le site devient mort pendant 32 secondes l'exécution de ce script. On est redirigé à la page voulu et le navigateur continu a exécuter quelque chose mais je ne vois pas quoi.

Si ça vous dit quelque chose ou vous avez une piste ou solution de piste, s'il vous plait m'en faire part.

Merci

Re: Redirection par header après une commande SQL fait ralen

Posté : 18 avr. 2012, 23:12
par Calimero
Bonsoir,

Une piste : il faut savoir qu'une redirection par header() n'interrompt pas l'éxécution du script (et de tout ce qu'il peut contenir). Il faut terminer l'éxécution explicitement, avec un die() ou autre, pour s'en assurer.

Re: Redirection par header après une commande SQL fait ralen

Posté : 19 avr. 2012, 16:47
par dblais
Dans mon exécution, j'insère quelque des données dans une table dans la base de donnée et puis je redirige vers une autre page PHP.

Je vois que la page se redirige et rendu à la deuxième page, un temps de lag d'environ 23 secondes...

Je fais rouler la même commande SQL dans mon interface de base de donnée et ça lui prend moins d'une seconde. Qu'est-ce qui expliquerait ça?

Re: Redirection par header après une commande SQL fait ralen

Posté : 19 avr. 2012, 17:05
par dblais
Je viens de faire un autre test. J'ai exécuté le même script en ayant ouvert une page avec la table de la base de données ouverte. Quand j'ai exécuté le script, je suis tout de suite allé voir si la ligne s'était ajouté dans la table et c'est le cas. Mais le site était mort pendant les 20-30 secondes tout de même.

Re: Redirection par header après une commande SQL fait ralen

Posté : 20 avr. 2012, 23:08
par Ripat
On t'a donné une piste plus haut. Toujours un exit après une redirection car sinon ton script continuera de tourner après avoir envoyé la redirection.
header('Location: redirection.php'); exit;

Re: Redirection par header après une commande SQL fait ralen

Posté : 25 avr. 2012, 18:09
par dblais
J'ai essayé ce que vous m'avez dis et rien n'a changé :(

Re: Redirection par header après une commande SQL fait ralen

Posté : 25 avr. 2012, 20:45
par Ripat
Dans ce cas, recette habituelle: les logs apache, MySQL et augmenter le error_reporting de php avec un error_reporting(E_ALL). As-tu accès aux logs? (dédié? machine de dvp?) Sinon, vérifie bien que ton script php ne rentre pas dans une boucle. Tu peux t'en assurer en envoyant des echo à chaque INSERT.

Re: Redirection par header après une commande SQL fait ralen

Posté : 26 avr. 2012, 10:44
par popy
Ton problème se produit quand tu arrive sur la page vers laquelle tu est redirigée ? Dans ce cas ça n'a rien a voir avec ta requete, mais avec la page en question.

Re: Redirection par header après une commande SQL fait ralen

Posté : 08 mai 2012, 21:53
par dblais
Ce que je vois c'est quand on je fais une insertion ou modification à ma table en question, c'est la que tout arrête de fonctionner. Je dis bien "la table en question", parce qu'une autre table, tout fonctionne bien... Mais je ne vois pas ce que cette table a comme problème.