Bonjour,
j'ai un ptit problème avec ma session. Je m'explique : je développe un site, et je dois gérer un changement de page. Une fonction calcule le nbre de pages totales en fonction du contenu et l'enregistre dans une variable de session "all_pages" puis la page courante s'initialise à 1 et s'inscrit aussi une variable de session "cur_page".
Enusite mes petites fleches interviennent en passant dans l'url un $_GET['action'] égal à "suiv" ou "prec" et fais donc $_SESSION['cur_page']+=1 (ou -=)
tout va bien sous Opera mais il ya un "hic" avec Firefox et IE : impossible de passer par la page 3 ! et j'ai "printé" ma session à 4 endroit différent :
au tout début du fichier PHP, juste avant qu'il ne change le numéro de page, juste après et à la fin du fichier pour vérifier qu'à aucun moment je ne fasse une manip malheureuse et c'est là que ça devient bizarre. voilà les résultats qu'il me sort pour $_SESSION['cur_page'] :
print1 | print2 | print3 | print4
-----------------------------
1 1 1 1 par défaut
1 1 2 2 1er clic sur suivant
3 3 4 4 2e clic
4 4 5 5 3e clic
Bref vous remarquerez qu'entre la page 2 et la 3 il devrait y avoir la 3 ! je rapl que le premier print est au debut du fichier php (juste apres le "session_start();" et le dernier à la fin du fichier... la session n'a pu donc subir aucun traitement entre les 2 !
alors si quelqu'un a une idée ça m'aiderait beaucoup parce que là je suis en train de devenir fou !!
Merci
edit : j'ai réduit le nombre de résultats par pages pour étudier le comportement sur plus de pages. Les pages défilent de la manière suivante :
1 -> 2 -> 4 -> 6 -> 8 -> 10 cela voudrait dire que j'incrémente deux fois ma variable mais pas sous Opera et pas quand la variable =1 ... ça tient pas la route.
Message édité par bis2kt le 20-09-2006 à 12:26:15