8795 sujets

Développement web côté serveur, CMS

Bonjour,

voila mon bout de code, (les explications en dessous)
if($requete2) 
{
echo '<table>';

        echo '<tr>';
        echo '<td><b><u>Categorie</u></b></td>';
        echo '<td<b><u>Marque</u></b></td>';
      echo '<td><b><u>Designation</u></b></td>';
      echo '<td><b><u>Codebarre</u></b></td>' ;
         echo '<td><b><u>Quantité Dispo</u></b></td>';
         echo '<td><b><u>Quantité Choisie</u></b></td>';
		echo '<td><b><u>PrixTTC</u></b></td>';
      echo '<td><b><u>Selectionner</u></b></td>';
echo '</tr>';
        while( $result = mysql_fetch_array( $requete2) )
{
echo '<tr>';
      echo '<td>'.stripslashes($result["idcategorie"]).'</td>';
        echo '<td>'.stripslashes($result["idmarque"]).'</td>';
        echo '<td>'.stripslashes($result["Designation"]).'</td>';
      echo '<td>'.stripslashes($result["Codebarre"]).'</td>';
      echo '<td>' .$result["Quantite"]. ' </td>';
      [#orange]echo '<td><input type="text" size="3" name="qtechoisie" value=""></td>';[/#]//ici j'ai mi un champs de type text pour rentrer la quantite que je veux envoyer par l'url
	  echo '<td>'.stripslashes($result["PrixTTC"]).'€</td>';
	  echo("<td> <input type=button value=Selectionner onclick=\"location.href='rechercheproduit.php?id=".$result['id']."?[#red]qtechoisie=".$_GET['qtechoisie']."'[/#]\"> </td>") ; //ici je veux recuperer ma quantité entrée au dessus mais je ne sais pas du tout comment [ohwell]. Le $_GET etait juste pour tester ca ne fonctionne pas je sais.
}
      	echo '</tr>'."\n";
echo '</table>'."\n";
}


Ici j'affiche les champs des produits qui sont dans ma base de donnée, dans la derniere case du tableau j'ai un bouton "selectionner" qui recupere l'id de mon produit et l'envoi la meme page php effectuant ceci:



if(isset($_GET["id"]))
{
$id  = $_GET["id"] ; // recuperation id ok
$qte = $_GET["qtechoisie"] ; // Quantité que je veux recup mais je n'y arrive pas

 //requête SQL:
  $sql = ("SELECT *
            FROM produits
	    WHERE id = '$id' ") ;
 
  //exécution de la requête:
  $requete = mysql_query( $sql) ;
  If ( $result = mysql_fetch_array( $requete ) )
  {
  	// champs de type cacher
	 echo '<td><input type="hidden" name="nom" value="'.$result['id'].'"></td>';
     echo '<td><input type="hidden" name="nom" value="'.$result['idcategorie'].'"></td>';
     echo '<td><input type="hidden" name="prenom" value="'.$result['Codebarre'].'"></td>';
     echo '<td><input type="hidden" name="phone" value="'.$result['Designation'].'"></td>';
     echo '<td><input type="hidden" name="mail" value="'.$result['PrixHT'].'"></td>';
     echo '<td><input type="hidden" name="adresse" value="'.$result['PrixTTC'].'"></td>';
     

  }
  // recupere les champs du formulaire dans des variables pour inserer dans la table

$codebarre= $result['Codebarre'];
$designation = $result['Designation'];

$prixHT = $result['PrixHT']; 

$prixTTC = $result['PrixTTC'];

$requete1 = "insert into produitprov values('','$codebarre','$designation','$qte','$prixHT','$prixTTC')";


 mysql_query ($requete1);
}
?>



Si quelqu'un pouvait m'aider ce serait cool. Merci Smiley biggrin
Modifié par macbook-user (19 Jan 2011 - 12:06)
echo("<td> <input type=button value=Selectionner onclick=\"location.href='rechercheproduit.php?id=".$result['id']."?qtechoisie=".$_GET['qtechoisie']."'\"> </td>") ;

D'où vient $_GET['qtechoisie'] ?
Si tu regarde le lien généré par cette ligne dans le HTML, il est fort probable que cette valeur soit null. à moins qu'il n'y ai une variable "qtechoisie" transmise dans l'url, ce que tu ne précises pas.
moust a écrit :
echo(&quot;&lt;td&gt; &lt;input type=button value=Selectionner onclick=\&quot;location.href='rechercheproduit.php?id=&quot;.$result['id'].&quot;?qtechoisie=&quot;.$_GET['qtechoisie'].&quot;'\&quot;&gt; &lt;/td&gt;&quot;) ;

D'où vient $_GET['qtechoisie'] ?
Si tu regarde le lien généré par cette ligne dans le HTML, il est fort probable que cette valeur soit null. à moins qu'il n'y ai une variable &quot;qtechoisie&quot; transmise dans l'url, ce que tu ne précises pas.


Le $_GET['qtechoisie'] ne fonctionne pas, c'etait juste un test.

Effectivement la valeur est nulle dans le lien: http://test.fr/gestion/Sortie/rechercheproduit.php?id=4?qtechoisie=

Ce que je veux obtenir c'est que la valeur insérée dans la ligne input text name="qtechoisie" rentre la ligne ou il y a le selectionné mais je n'y parviens pas



edit:

En gros ce que je voudrais savoir c'est ca:

echo '<td><input type="text" size="3" name="qtechoisie" value=""></td>';//ici j'ai mi un champs de type text pour rentrer la quantite que je veux envoyer par l'url 
      echo("<td> <input type=button value=Selectionner onclick=\"location.href='rechercheproduit.php?id=".$result['id']."?qtechoisie="Que mettre ici pour recuperer la valeur du champs juste au dessus et l'envoyer par url'\"> </td>") ;

Modifié par macbook-user (19 Jan 2011 - 15:52)
Bonjour,

Je pense que ton code ne peux pas fonctionner comme ça.

Ce que je ne comprends pas, c'est pourquoi tu passes ces valeurs avec un 'location.href' !
Pourquoi ne passes-tu pas les valeurs avec la méthode POST et un formulaire.
Comme ça tu n'auras aucun souci à envoyer la valeur 'qtechoisie'. Et en ce qui concerne la valeur pour 'id', tu utilises un champ 'hidden'.

Par ailleurs, tu as une erreur dans ton code :
rechercheproduit.php?id=".$result['id']."?qtechoisie=".$_GET['qtechoisie']."


Lorsqu'on passe des variables dans une URL on les sépare avec le symbole &.
Tu aurais du écrire :
rechercheproduit.php?id=".$result['id']."&qtechoisie=".$_GET['qtechoisie']."
youbaba a écrit :
Bonjour,

Je pense que ton code ne peux pas fonctionner comme ça.

Ce que je ne comprends pas, c'est pourquoi tu passes ces valeurs avec un 'location.href' !
Pourquoi ne passes-tu pas les valeurs avec la méthode POST et un formulaire.
Comme ça tu n'auras aucun souci à envoyer la valeur 'qtechoisie'. Et en ce qui concerne la valeur pour 'id', tu utilises un champ 'hidden'.

Par ailleurs, tu as une erreur dans ton code :
rechercheproduit.php?id=&quot;.$result['id'].&quot;?qtechoisie=&quot;.$_GET['qtechoisie'].&quot;


Lorsqu'on passe des variables dans une URL on les sépare avec le symbole &amp;.
Tu aurais du écrire :
rechercheproduit.php?id=&quot;.$result['id'].&quot;&amp;qtechoisie=&quot;.$_GET['qtechoisie'].&quot;


Merci pour l'info j'ai utilisé un form et ca fonctionne Smiley lol