Probleme checkbox

cs_admin92 Messages postés 5 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 1 mai 2005 - 30 avril 2005 à 23:09
cs_admin92 Messages postés 5 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 1 mai 2005 - 1 mai 2005 à 17:56
Bonjour,

j'ai actuellement une liste de news qui s'affiche en dynamique et au bout de chaque ligne une checkbox qui recupere l'ID de la news.
je voudrais faire une requete Mysql pour afficher seulement les infos qui ont été cochées sachant qu'il peut y avoir plusieurs cases cochées.

A l'heure actuellement j'arrive à en afficher seulement 1 mais opas les autres.

Qq'un peut il m'aider?

Merci bcp

9 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
30 avril 2005 à 23:55
Salut,



consulte la doc de php sur le foreach.



Ensuite tu génères ta requête dynamiquement, que tu effectues après le foreach.



a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
cs_admin92 Messages postés 5 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 1 mai 2005
1 mai 2005 à 00:00
la doc est consultée et j arrive a afficher toutes les variables générées par les checkbox mais pour la requete il ne m'affiche la réponse pour une seule variable la dernière.
Voici une bout de mon code:

<?php
if(isset($_POST['commande']))
$val=$_POST['commande'];
foreach ($_POST['commande'] as $cle=>$valeur)
echo $cle.' : '.$valeur.'
';
mysql_select_db($database_hotline, $hotline);
$query_test = "SELECT * FROM commandes WHERE commande=$valeur";
$test = mysql_query($query_test, $hotline) or die(mysql_error());
$row_test = mysql_fetch_assoc($test);
$totalRows_test = mysql_num_rows($test);
?>

comme tu vois le tableau des variables s affiche sans problemes mais une seule passe dans la requete.

Comment faire pour que toutes passent dans la requete et ainsi obtenir l affichage de toutes les réponses des checkbox?
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
1 mai 2005 à 00:17
Normal, fais un truc de ce genre :



$requete='SELECT champ1,champ2,etc... FROM commandes WHERE commande=';

$i=0;

while(list($nom,$valeur) = each($_POST['commande']
))

{

if($i==0)

{

$requete.=$valeur;

}

else

{

$requete.=' AND commande='.$valeur;

}

$i++;

}

mysql_connect('hote','user','passe');

mysql_select_db($bdd);

mysql_query($requete);

mysql_close();
<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
cs_admin92 Messages postés 5 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 1 mai 2005
1 mai 2005 à 00:24
Merci de ta réponse rapide mais cela ne marche pas

Pourquoi la requete se termine comme ca? est ce normal?

lors de l'affichage il me signale une erreur de requete.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
1 mai 2005 à 00:37
Il faut adapter ta requête en fonction des champs présents dans ta base de données...



j'ai mis "champ1, champ2" dans la requête, il faut mettre le nom de tes champs....

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
1 mai 2005 à 00:38
Lu,

ajoute un or die(mysql_error()); a ta requette au query ( mysql_query() or die(); )

<hr style="width: 100%; height: 2px;">Si ma reponse te convient, merci de l'accepter !
0
cs_admin92 Messages postés 5 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 1 mai 2005
1 mai 2005 à 00:45
Merci de votre aide.

ma requete est censée afficher tous les champs de ma table pour toutes les cases cochées mais n'affiche que le résultat de la dernière valeur.

et le or die(mysql_error());
a ta requette au query ( mysql_query() or die(); )
a bien été ajouté et ne me revois pas d'erreur ma requete s'exécute bien mais ne m affiche pas ous les résultats

">

voici ma checkbox qui prend la valeur dynamique de l ID de la news
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
1 mai 2005 à 06:46
Bah après une fois que t'as fait ta requête tu fais ton mysql_fetch_row .... On va pas tout faire non plus...



a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
cs_admin92 Messages postés 5 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 1 mai 2005
1 mai 2005 à 17:56
Merci de ta dernière réponse mais la répétition de la requete est deja passé et c'est bien ca qui m'ennuie car je devrais avoir plusieurs résultats qui s'affichent quand plusieurs cases sont cocher mais il n'y en a qu'une qui apparait la dernière.

Lorsqu'on fait une requète Mysql et que plusieurs variables sont passées est ce que la base voit les différentes variables?

Merci de votre aide mais cela fait plus de 2 semaines que je planche dessus et de tres nombreuses tentatives ont été testés avant de faire appel à votre aide.
0
Rejoignez-nous