Bonjour,

Je n'arrive pas à passer des valeurs d'une page à une autre.

Voici le code de la page 1.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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&nbsp;<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 : Sélectionner tout - Visualiser dans une fenêtre à part
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">&nbsp;</td></tr>
	 <tr><td colspan="7" style="border: 0px solid silver;" class="texte_tb" align="center">Nouvelle description&nbsp;<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">&nbsp;</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...