[PHP] faute de saisie / variables ?
dubuducu
Messages postés
395
Statut
Membre
-
dubuducu Messages postés 395 Statut Membre -
dubuducu Messages postés 395 Statut Membre -
Bonjour,
j'ai un probleme dans mon code je pense dans le input checkbox ... pouvez vous m'aider ?
Voila ce que j'ai pour le moment
dans liste.php
--------
$i=0;
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td width="80" bgcolor="#d4d4d4">'.$row['id'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['departement'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['commentaires'].'</td>';
echo '<td><input type="checkbox" name="option'.$i.'" value="'.$row['id'].'">acheter<br></td>'."n";
echo '</tr>'."n";
$i = $i +1;
}
----------
dans confirmation.php (la page de confirmation juste apres liste.php histoire de recapituler les devis chekés)
<?php
include('bdd.php');
$c = $_POST['option'.$i.''];
$sql = "SELECT id,departement,commentaires FROM devis_table WHERE id = '" . $c . "' ";
$result = mysql_query( $sql) or die( "Erreur : " . mysql_error() );
echo '<table bgcolor="#FFFFFF" align="center">'."n";
// première ligne on affiche les titres dans 4 colonnes
echo '<tr>';
echo '<td><b>Vous avez choisi : </b></td>';
echo '<td width="80" bgcolor="#9f9f9f"><b><u>id</u></b></td>';
echo '<td bgcolor="#9f9f9f"><b><u>departement</u></b></td>; ;';
echo '<td bgcolor="#9f9f9f"><b><u>commentaires</u></b></td&g t;';
echo '</tr>'."n";
$i=0;
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td width="80" bgcolor="#d4d4d4">'.$row['id'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['departement'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['commentaires'].'</td>';
echo '</tr>'."n";
$i = $i +1;
}
echo '</table>'."n";
?>
Voili : cela maffiche mon tablo vide :s !
pouvez-vous m'aider MERCI
j'ai un probleme dans mon code je pense dans le input checkbox ... pouvez vous m'aider ?
Voila ce que j'ai pour le moment
dans liste.php
--------
$i=0;
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td width="80" bgcolor="#d4d4d4">'.$row['id'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['departement'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['commentaires'].'</td>';
echo '<td><input type="checkbox" name="option'.$i.'" value="'.$row['id'].'">acheter<br></td>'."n";
echo '</tr>'."n";
$i = $i +1;
}
----------
dans confirmation.php (la page de confirmation juste apres liste.php histoire de recapituler les devis chekés)
<?php
include('bdd.php');
$c = $_POST['option'.$i.''];
$sql = "SELECT id,departement,commentaires FROM devis_table WHERE id = '" . $c . "' ";
$result = mysql_query( $sql) or die( "Erreur : " . mysql_error() );
echo '<table bgcolor="#FFFFFF" align="center">'."n";
// première ligne on affiche les titres dans 4 colonnes
echo '<tr>';
echo '<td><b>Vous avez choisi : </b></td>';
echo '<td width="80" bgcolor="#9f9f9f"><b><u>id</u></b></td>';
echo '<td bgcolor="#9f9f9f"><b><u>departement</u></b></td>; ;';
echo '<td bgcolor="#9f9f9f"><b><u>commentaires</u></b></td&g t;';
echo '</tr>'."n";
$i=0;
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td width="80" bgcolor="#d4d4d4">'.$row['id'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['departement'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['commentaires'].'</td>';
echo '</tr>'."n";
$i = $i +1;
}
echo '</table>'."n";
?>
Voili : cela maffiche mon tablo vide :s !
pouvez-vous m'aider MERCI
Configuration: Windows XP Internet Explorer 6.0
3 réponses
-
"SELECT id,departement,commentaires FROM devis_table WHERE id = '" . $c . "' ";
name="option'.$i.'"
Tu fait un Where sur le nom.
Laisse le même nom pour chaque checkbox dans ton while et change juste l'attribut Value avec ton $i
Ensuite dans l'autre page tu fait :
$c = $_POST['{nom de tes checkbox}'];
$sql = "SELECT id,departement,commentaires FROM devis_table WHERE id = '" . $c . "' "; -
Ok no problem :)
En gros dans ton While de la page liste.php, tu utilise ta variable $i pour le name de tes checkbox (name="'option'.$i.'")
Or le nom de tes checkbox doit être à chaque fois le même, du coup ta variabke $i ne sert plus pour le name mais pour le value !
Exemple :
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td width="80" bgcolor="#d4d4d4">'.$row['id'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['departement'].'</td>';
echo '<td bgcolor="#d4d4d4">'.$row['commentaires'].'</td>';
echo '<td><input type="checkbox" name="case" value="'.$row['id'].'">acheter<br></td>'."n";
echo '</tr>'."n";
}
$c = $_POST['case'];
$sql = "SELECT id,departement,commentaires FROM devis_table WHERE id = '" . $c . "' ";
$result = mysql_query( $sql) or die( "Erreur : " . mysql_error() );
Essaye ça, je pense que c'est ça ;) -
En fait désolé, ta variable ne sert plus à rien puisque les values de tes checkbox viennent de l'ID. :)