Pb de timing assez rageant. - PHP - Programmation
Marsh Posté le 01-07-2002 à 19:10:35
Plus de doute, certaines variables ne sont pas enregistée, et ce de temps en temps, quand ca le chante
Pour infos, les infos de session sont stokés dans un repertoire, avec un fichier par session.
BOn je vais tente ma boucle vide, m'enfin, c'est du boulot degueulasse, j'aimerai mieux cerner le PB.
Marsh Posté le 02-07-2002 à 10:18:43
J'ai exactement le meme problem ke toi avec un site ke javais fais et ke j'ai mis en ligne sur free.
le variables de session ne sont pas vite mise a jour a sa cause de probleme
je n'est pas encore trouvé de solutions
Marsh Posté le 02-07-2002 à 13:29:40
Bon reprennons nous, j'ai une idée mais qui n'est pas idéal car elle va bouffer de la ressource inutilement sur le moteur de free, mais bon, FAUT BIEN QUA CA FONCTIONNE !!!
l'idée est une boucle qui enregistre la variable tant que celle ci n'est pas enregistrée:
__________________________________________________
while (!isset($_SESSION['PT12Var']) || $_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr" )
{
$_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr"
}
_________________________________________________
Un time out pourrait eviter aussi une boucle sans fin
_________________________________________________
for ($timeout = 0 ; $timeout<10000 ; $timeout++ )
{
while (!isset($_SESSION['PT12Var']) || $_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr" )
{
$_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr"
}
}
________________________________________________
mais bon c surement pas la meilleur solution .
HELP US PLZZ
Marsh Posté le 02-07-2002 à 13:29:45
Bon reprennons nous, j'ai une idée mais qui n'est pas idéal car elle va bouffer de la ressource inutilement sur le moteur de free, mais bon, FAUT BIEN QUA CA FONCTIONNE !!!
l'idée est une boucle qui enregistre la variable tant que celle ci n'est pas enregistrée:
__________________________________________________
while (!isset($_SESSION['PT12Var']) || $_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr" )
{
$_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr"
}
_________________________________________________
Un time out pourrait eviter aussi une boucle sans fin
_________________________________________________
for ($timeout = 0 ; $timeout<10000 ; $timeout++ )
{
while (!isset($_SESSION['PT12Var']) || $_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr" )
{
$_SESSION['PT12Var'] != "Tu va ecrire oui ! Grrr"
}
}
________________________________________________
mais bon c surement pas la meilleur solution .
HELP US PLZZ
Marsh Posté le 02-07-2002 à 18:32:26
Ya rien a faire, les boucles n'y font rien, je desespere
J'ai vraiment tout essayé HELP !!!!!!!!!!!!
Marsh Posté le 02-07-2002 à 20:03:06
tas essayé sur un autre hebergeur ???
Car la tu te prend la tete peut etre pour pas grand chose ...
Marsh Posté le 01-07-2002 à 18:54:49
Salut.
)
BOn j'ai un PB sur mon site, j'en rage.
Je suis chez free.fr
J'ai fais une rubrique d'inscription constitué de plusieurs formulaires PHP.
Voici son principe de fonctionnement.
Chaque page php a son formulaire POST dont l'action le redirige sur la meme page. La page donc se recharge lors du post, puis vérifie ses champs.
Si tous les champs sont ok, on les stocke dans des variables de session, et on passe a la page suivante.
Pour éviter que des petits malins aillent directement au dernier formulaire, j'ai mis en place un petit system qui verifie que les autres formulaires aient bien été validé par mes scripts de verif.
En fait c'est simple, disons que le visiteur est sur le premier formulaire , si tous les champs sont bons, avant de rediriger la page, on dit que $_SESSION['Inscri1'] = TRUE;
ET dans la page suivante on dit que si $_SESSION['Inscri1'] != TRUE
alors on redirige vers le formulaire precedant.
Ainsi je suis sur que mes gars ne zap pas des formulaire en rentrant directement l'URL du dernier FOrmulaire.
Maintenant mon PB :
Il arrive que (enfin j'en ai l'impression) que le moteur PHP de free n'a pas le temps d'enregistrer la variable $_SESSION['Inscri1'] avant de rediriger.
Resultat, la page d'apres crois que le formulaire precedant n'est pas validé, et le visiteur est redirigé sur la page precedante.
CA ne le fait que de temps en temsp, mais tres souvant quand meme, alors moi je suis vert, je ne sais pas trop quoi faire, je me demande si un boucle vide avant la redirection solutionnerait le PB, ou si quelqu'un aurait une autre idée pour m'aider.
Voici un extrait de code d'un de mes formulaire (oui je n'oublie jamais de faire un session_start() en debut de chaque page
_________________________________________________
// Si tous les champs sont ok
if ($VerifFOK == TRUE)
{
$_SESSION['Inscri1'] = TRUE;
header("Location: inscription2.php" );
}
________________________________________________
et dans la page suivante, apres le session_start, on a :
________________________________________________
// Si formulaire precedant non validé
$verifOldForm = $_SESSION['Inscri1'];
if ($verifOldForm != TRUE)
{
header("Location: Inscription1.php" );
}
__________________________________________________
Voila, si quelqu'un a un consiel pour me sauver, je le remercie grandement d'avance.