Bonjour,
j'ai fait 3 pages pour interroger une base de données :
accueil : formulaire
résultat : liste abrégée des réponses
détail : détail d'une réponse.
l'affichage de la page résultats se fait sur plusieurs pages.
Mon problème est que les variables de session issues de cette page résultat sont toujours les derniers résultats de la liste.
la page "détail" ne donne donc que les résultats qui concernent la dernière ligne, même si je sélectionne autre chose.
J'ai vu cela en faisant
print_r($_SESSION) ;
Pour définir ces variables de session, j'ai écrit ma requête puis utilisé WHILE et j'ai mis alors la définition des variables, juste avant l'affichage des résultats :
il y a un <form> pour recupérer ensuite la sélection de la ligne et la passer à la page suivante, mais je n'ai pas mis tout le code pour ne pas surcharger la page.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 while ($data = mysql_fetch_array($req1)) { $_SESSION['auteur_resultat']=stripslashes(trim($data['auteur'])); $_SESSION['titre_resultat']=stripslashes(trim($data['titre'])); $_SESSION['clef_resultat']=stripslashes(trim($data['clef'])); // on affiches les résultats dans la table echo '<form action="ressources_resultats.php" method="post" id="formulaire">Référence :<input type=\"text" name="clef" size="4" value="'.$_SESSION['clef_resultat'].'">'; echo '<span class="description">',$_SESSION['titre_resultat'],'</span>';
est-ce que quelqu'un a une idée de ce qui peut poser problème ? pourquoi $_SESSION['clef_resultat'] prend d'office la valeur de la dernière ligne de mon tableau ?
Merci par avance pour votre aide,
Caroline
Partager