[erreur variable php]

Bonjour

si quelqu'un peut m'expliquer ou est mon erreur parcke je ne comprend pas: je veux récuperer au reload de ma page des valeurs entrées dans le formulaire de la page. Mais ca me met une erreur....

Notice: Undefined index: qte_0 in c:\program files\easyphp1-8\www\truc\choix_produit.php on line 17
name=qte_0Valeur du champ 0 :

voici mon code:
if ($_GET['action']=='ajout')
  {
   for ($i=0; $i <count($_SESSION['panier']); $i++){ 
             $value = $_GET['qte_'.$i]; 
			 echo 'name=qte_'.$i.'';
             echo 'Valeur du champ '.$i.' : '.$value.'<br />'; 
}
}
--ici la génération du formulaire:
<?
		for ($i=0; $i < count($_SESSION['panier']); $i++){?>
		<tr>
		<td> <? echo $_SESSION['panier'][$i]['produit']; ?> </td>
		<td> <input type='text' name="qte_'.$i.'"> </td>
		<td> <? echo $_SESSION['panier'][$i]['prix']  ?> </td>
				<td> <input type="checkbox" name="choix[]" value=".$i." checked="checked" ></input> </td> </tr>";
																<? 
}
?>
--le rappel de ma page
 <a href="choix_produit.php?action=ajout">tester</a>

Si vous avez une idée parce que j'en suis à court..

Merci
Configuration: Windows XP
Firefox 1.0.7

4 réponses

  1. En fait tu as vu juste il y avait en effet 2 erreurs...

    La première il manquait les guillemets .
    De plus en rajoutant la vérification de l'existance de ma variable jme suis rendu compte qu'elle n'existait pas...J'ai changé le code et maintenant c bon

    Probleme résolu....merci
    1. Contributeur
      Euh moi j'aurais dit :
      if ($_GET['action']=='ajout')
      {
      for ($i=0; $i < count($_SESSION['panier']); $i++)
      {
      $value = $_GET["qte_$i"]; //entre guillemets sinon $i ne sera pas remplacé par sa valeur
      //Je ne vois pas l'intérêt d'afficher cette ligne
      //echo 'name=qte_' . $i . '';
      echo 'Valeur du champ ' . $i . ' : ' . $value . '<br />';
      }
      }

      Es-tu sûr que la variable qte_0 exite vraiment ? Sinon une condition pour vérifier qu'elle existe serait la bienvenue
      1. Merci pour ton aide mais j'ai testé avec les modifications et ca me met:

        Notice: Undefined index: qte_$i in c:\program files\easyphp1-8\www\truc\choix_produit.php on line 18
        Valeur du champ 0 :

        Je comprend pas pourquoi j'arrive pas à récuperer la valeur des champs texte de type qte_0 ou qte_1
        1. Contributeur
          Salut,

          Déjà il faudrait que ton code soit juste, je veux dire que tu ouvres et tu fermes un peut partout les balises PHP (<?php ?>)sans toujours les fermer, c'est plein d'imbrication de php/html alors qu'il serait plus simple de tout faire en PHP.

          Exemple1
          value=".$i." affichera value=".$i."

          Exemple2
          <?php echo $_SESSION['panier'][$i]['prix'] ?>

          Il manque ";" à la fin de la fonction.

          Les commentaire en PHP ce font comme ceci :
          // Commentaire...

          En HTML comme ça :
          <!-- Commentaire... -->

          Je ne peux pas tester le code en condition réelle, je te fais confiance pour les cookies :
          <?php
          
          if ($_GET['action']=='ajout')
          	{
          	for ($i=0; $i < count($_SESSION['panier']); $i++)
          		{ 
          		$value = $_GET['qte_$i']; 
          		//Je ne vois pas l'intérêt d'afficher cette ligne
          		//echo 'name=qte_' . $i . '';
          		echo 'Valeur du champ ' . $i . ' : ' . $value . '<br />'; 
          	}
          }
          
          //ici la génération du formulaire:
          
          echo '<table>';
          
          for ($i=0; $i < count($_SESSION['panier']); $i++)
          	{
          	echo '<tr><td>' .  $_SESSION['panier'][$i]['produit'] . '</td>
          	<td><input type="text" name="qte_' . $i . '"></td>
          	<td>' . $_SESSION['panier'][$i]['prix'] . '</td>
          	<td><input type="checkbox" name="choix[' . $i . ']" value="' . $i . '" checked="checked" ></input> </td> </tr>';									 
          }
          
          echo '</table>';
          
          ?>
          <!-- le rappel de ma page -->
          <a href="choix_produit.php?action=ajout">tester</a>