[PHP] faute de saisie / variables ?

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
A voir également:

3 réponses

Anonimus
 
"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 . "' ";
0
dubuducu Messages postés 395 Statut Membre 4
 
oui alors la je me sens pas tres bien ...
je suis un peu perdu désolé avec tes explications qui ne sont pas limpides pour moi.
excuse moi pour cela, je commence le Php.

Pourrai tu rendre ceci plus comprehensible pour moi s'il te plait ?
je te remercie davance
0
Anonimus
 
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 ;)
0
dubuducu Messages postés 395 Statut Membre 4
 
c'est tout a fait cela, cela fonctionne ! Merci beaucoup
0
Anonimus
 
En fait désolé, ta variable ne sert plus à rien puisque les values de tes checkbox viennent de l'ID. :)
0
dubuducu Messages postés 395 Statut Membre 4
 
Merci , mais cela fonctionne !
0
dubuducu Messages postés 395 Statut Membre 4 > dubuducu Messages postés 395 Statut Membre
 
Cela ne fonctionne pas !!!!

avec ce code, on ne peut recuperer qu'un seul checkbox !
lorsqu'on en clike 2 ou plusieurs il ne rend qu'une seule !
0