Passage de valeurs entre 2 pages
Bonjour,
Je n'arrive pas à passer des valeurs d'une page à une autre.
Voici le code de la page 1.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <?php
// le formulaire
$x = '';
$x .= '<form action="update.php" method="post">
<tr><td colspan="7">Modèle du produit <input type="text" name="modele" size="5"><input name="executer" type="submit" value="Exécuter">
<input type="hidden" name="id"><input type="hidden" name="description"></td></tr></form>';
echo $x;
if(!empty($_POST['modele'])){
$cnx = mysql_connect("localhost", "root", "") ; //connection au serveur
$db = mysql_select_db("ma_base") ; //sélection de la base de données
//je cherche le produit sélectionné
$req_prod = "select * from " . TABLE_PRODUCTS . " where products_model='$modele'";
$req = mysql_query($req_prod, $cnx) or die('Erreur SQL !<br>'.$req_prod.'<br>'.mysql_error());
$data = mysql_fetch_array($req);
$id = $data['products_id'];
//je cherche la description du produit sélectionné
$req_desc = "select * from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id ='$id' and language_id='2'";
$req1 = mysql_query($req_desc, $cnx) or die('Erreur SQL !<br>'.$req_desc.'<br>'.mysql_error());
$data1 = mysql_fetch_array($req1);
$description = $data1['products_description'];
mysql_close();
}
?> |
Quand je teste $id et $description dans la page 2 (update.php) les 2 variables sont vides.
Voici le code de la page 2.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <?php
//test de passage de var
$id= $_POST['id'];
$description = $_POST['description'];
echo ' ID : '.$id;
if (!empty($_POST) && !empty($_POST['executer'])) {
mysql_query('UPDATE "' . TABLE_PRODUCTS_DESCRIPTION .'" SET products_description="'.$description.'" WHERE products_id = "'.$id.'"') or die('Erreur sql ligne ' . __LINE__ . '<br />'.mysql_error());
$mess = "<h2>Mise à jour effectuée!</h2>";
echo $description;
}
$cnx = mysql_connect("localhost", "root", "") ; //connection au serveur
$db = mysql_select_db("ma_base") ; //sélection de la base de données
//je cherche le produit sélectionné
if(!empty($_POST['modele'])){
//je charge l'enregistrement à updater
$req_desc = "select * from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id ='$id' and language_id='2'";
$req1 = mysql_query($req_desc, $cnx) or die('Erreur SQL !<br>'.$req_desc.'<br>'.mysql_error());
$data1 = mysql_fetch_array($req1);
$description = $data1['products_description'];
}
// le formulaire
$x = '';
$x = '<form action="bdd_mod_description.php" method="post">
<tr class="texte_tb"><td colspan="7" style="border: 0px solid silver;" class="texte_tb" align="center">MODIFIER DANS LE CATALOGUE LA DESCRIPTION D\'UN PRODUIT</td></tr>
<tr class="texte_tb"><td colspan="7"> </td></tr>
<tr><td colspan="7" style="border: 0px solid silver;" class="texte_tb" align="center">Nouvelle description <textarea name="description" cols="70" rows="20" style="overflow:auto">'.$description.'</textarea></td></tr>
<tr><td colspan="7" align="center"><input name="executer" type="submit" value="Exécuter"></td></tr>
<tr><td colspan="7" align="center"> </td></tr></form>';
echo $x;
mysql_close();
?> |
Dans page 2, j'obtiens l'erreur suivante ID : Erreur sql ligne 92 Erreur de syntaxe près de '='' WHERE products_id =' à la ligne 1 (c'est la ligne de l'UPDATE).Probablement parce que $id est vide...