Erreur d'affichage

Fermé
youka12 - 6 juin 2014 à 21:08
cyril1982 Messages postés 110 Date d'inscription vendredi 7 mars 2014 Statut Membre Dernière intervention 19 septembre 2018 - 6 juin 2014 à 21:29
salut !
j'ai comme sujet une agence de voyage en ligne si tu peux m'aider !
j'ai un problème avec php ,je veux afficher dans une page tous les offres qui existe dans la base de données avec un bouton pour chacun des offres pour accéder a cet offre . en même temps je veux récupérer son id pour pour l'afficher dans une autre page avec plus de détails .j'ai utilisé une boucle while pour l'affichage de tous les offres et quand je clique pour découvrir n'importe quel offre il m'affiche le dernier offres de la liste ! voilà le code de la page des offres :

$q="SELECT * FROM offre where dispo=1 ";
$qq=mysql_query($q);
if(!$qq){die('errroor'.mysql_error());}
while($data=mysql_fetch_row($qq)){



?> <ul>

<a href=<?php echo $data['1'];?> title="The road" rel="prettyPhoto[gallery]">

<img src=<?php echo $data['1'];?> alt="The Road" title="The Road" height="160px" width="460px"/></a>
<em><?php echo $data['6'].' à '. $data['3'].' DH seulement';?>                      <input id="v1"type="submit" name="submit" value="DECOUVRIR"/></em>
</li><?php $_SESSION['noffre']=$data['0'];}?>


voilà le code de la page où j'affiche l'offre seul

if(isset($_POST['submit'])){

$no=$_SESSION['noffre'];
$q="SELECT * FROM offre where 'NOffre'='".$no."'";
$qq=mysql_query($q);
if(!$qq){die('errroor'.mysql_error());}
while($data=mysql_fetch_assoc($qq)){
//if(!$qqq){die('errroor'.mysql_error());}

$_SESSION['no']=$no;


?>
<img src= <?php echo $data['image'];?> />
<p ><i>
<?php echo $data['description'];?></i>

<form method="post" action="gestoffre.php">

<input id="v1" type="submit"name="retour" value="RETOUR" > 
<input id="v1" type="submit"name="reserver" value="RESERVER"> 
<input id="v1" type="submit"name="simuler" value="SIMULER RESERVATION"> </form>
</center> <?php }}?>

ya t il une autre methode pour les afficher et garder le id ?

merci !!
A voir également:

1 réponse

cyril1982 Messages postés 110 Date d'inscription vendredi 7 mars 2014 Statut Membre Dernière intervention 19 septembre 2018 12
6 juin 2014 à 21:29
Bonjour,

Dans la page qui affiche toutes les offres, pour chaque tour de boucle tu affectes à la variable de session noffre la valeur $data['0']. Cette variable vaut donc le numéro de la dernière offre.

Dans la seconde page, tu affiches les données de l'offre définie dans la session, et non pas l'offre sur laquelle on clique.

Il ne faut pas utiliser la session mais passer l'info du numéro d'offre dans le formulaire .

Dans la 1ère page, à ajouter dans chaque boucle :

<input type="hidden" name="noffre" value="<?php echo $data['0'];?> /> 

Par contre dans cette première page, je ne trouve pas ta balise "form" ? Il faudrait en créer une par offre.

Dans la 2ème page :

$no=$_POST['noffre']; 


Bon courage.
0