Probleme de checkbox!!!!urgent

Signaler
Messages postés
2
Date d'inscription
lundi 27 septembre 2004
Statut
Membre
Dernière intervention
6 janvier 2005
-
Messages postés
137
Date d'inscription
lundi 14 octobre 2002
Statut
Membre
Dernière intervention
21 janvier 2009
-
cela fait maintenant 1 semaine que je galère dessus :
j ai une page pour l enregistrement des programmes
ces programmes correspondent à des sous programmes
dans ma page programme je recupere tous les sous programmes de la base de données
tous ces sous programmes sont accompagnés de checkbox
mon probleme est le suivant :
comment enregistrer dans la base les sous programmes correspondant lorsque la checkbox est coché j ai essayé diverses méthodes mais aucune ne fonctionne
pouvez-vous m aider en m apportant une solution ???
merci d'avance
Celfel

PS : voici le code source de ma page pour que ce soit plus clair :

<?php


$connect = mysql_connect("localhost","root");
mysql_select_db("stage",$connect);



//gestion des actions
if(isset($_POST['bouton']))
{
switch ($_POST['bouton'])
{
case "Ajouter":
$sql="INSERT INTO `programme`";
$sql=$sql." (`desprog`)";
$sql=$sql." VALUES ('".htmlentities($_POST["titre"])."')";

mysql_query($sql) or die ("Erreur dans l'ajout d'un programme :
".$sql);
break;

case "Modifier":

$sql="UPDATE `programme` SET";
$sql=$sql." `desprog`='".htmlentities($_POST['titre'])."'";
$sql=$sql." WHERE `numprog`=".$_POST['liste'];


mysql_query($sql) or die ("Erreur dans la modification d'un programme :
".$sql);
break;
case "Supprimer":

//----------------------> suppression du programme
$sql="DELETE FROM `programme` WHERE `numprog`=".$_POST["liste"];
mysql_query($sql) or die ("Erreur dans la suppression d'un programme :
".$sql);

break;
}
}
?>
<script language="javascript">
function VerifForm(formulaire)
{
titre = formulaire.titre.value;


if ( titre.length == 0 ){ alert("- Le champ titre est vide."); return(false);}else{ formulaire.submit(); }
}
</script>
<form name="typform" method="post" action="admin.php">
">,

----

Liste des programmes : &nbsp;&nbsp;,
<select name="liste" onChange="JavaScript:form.submit();">
<option value="new">--- Nouveau programme ---</option>
<? //affichage de la liste des programmes
$cpt=0;

$result = mysql_query("select * from programme");
while ($row = mysql_fetch_array($result))
{
if($_POST["liste"]==$row['numprog']){$s="selected";} //pour selectionner une ligne dans la liste

echo "<option ".$s." value=\"".$row['numprog']."\">".$row['desprog']."</option>";
$s='';
}
mysql_free_result($result);
//libère toute la mémoire et les ressources utilisées par la ressource de résultat result.
?>
</select>,
<? //affichage des elements du programme sélectionné
if(isset($_POST[\"liste\"]))
{
if($_POST[\"liste\"]!=\"new\" && !empty($_POST[\"liste\"]))//control d'erreur
{
$result=mysql_query(\"select * from programme where numprog=\".$_POST[\"liste\"]);
$prog = mysql_fetch_array($result);
mysql_free_result($result);

//$resultat=mysql_query(\"select * from sous_prog, programme_sous where programme_sous.numsous = sous_prog.numsous and programme_sous.numprog=\".$_POST[\"liste\"]);
//$sous = mysql_fetch_array($resultat);
//mysql_free_result($resultat);
}
}
?>
----

&nbsp;,
&nbsp;,

----

Titre : &nbsp;&nbsp;,
">,

----

Sous-Prog : &nbsp;&nbsp;,

<?
$sql = \"SELECT * FROM sous_prog \";

$res = mysql_query($sql) or die(\"Impossible de sélectionner ces sous-programmes\");
$num = mysql_num_rows($res) or die(\"Impossible de calculer le nombre de sous-programmes\");
?>
- Il y a <?echo $num;?> sous-programmes :

<?
while($val = mysql_fetch_array($res))
{
echo \"\";
echo $val[\"numsous\"];
echo $val[\"dessous\"];
if($num>1)
{?>

<?
}
}
?>
</td>
----

<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#666666">
----, </td>
,
<?
if(isset($_POST[\"liste\"]) )
{
if($_POST[\"liste\"]!=\"new\" && !empty($_POST[\"liste\"]) ) //gestion des boutons
{
?>
,
,
<? }} ?>
</td>
<tr>
<td height="40" colspan="3"></td>
</tr>
</table>
</form>

3 réponses

Messages postés
137
Date d'inscription
lundi 14 octobre 2002
Statut
Membre
Dernière intervention
21 janvier 2009

pour résoudre ton probleme tu peux faire comme ca



echo "";



et du coté PHP pour récupérer les valeur tu réexécute la requete SQL qui t'a permi d'afficher les checbox.




$sql = "SELECT * FROM sous_prog ";


$res = mysql_query($sql) or die("Impossible de sélectionner ces sous-programmes");
$num = mysql_num_rows($res) or die("Impossible de calculer le nombre de sous-programmes");
while($val = mysql_fetch_array($res)){

if($valCheck[$val[numsous]){

echo 'valeur selectionner'.$val[numsous].'
';



}



}




voila


krevette ;-)
Messages postés
2
Date d'inscription
lundi 27 septembre 2004
Statut
Membre
Dernière intervention
6 janvier 2005

en fait quand je selectionne une checkbox je voudrais qu'en validant les données cochées s enregistre dans la base de donnees
c est a dire que si checkbox=vrai alors je peux inserer dans ma table le numero du programme et le numero du sous programme
c est pas evident a expliquer comme ca
merci si vous pouvez m aider

celfel
Messages postés
137
Date d'inscription
lundi 14 octobre 2002
Statut
Membre
Dernière intervention
21 janvier 2009

dsl j'ai fais une erreur





pour résoudre ton probleme tu peux faire comme ca



echo "valCheck[".$val["numsous"]."]
" value="".$val["numsous"]."">";



et du coté PHP pour récupérer les valeur tu réexécute la requete SQL qui t'a permi d'afficher les checbox.




$sql = "SELECT * FROM sous_prog ";


$res = mysql_query($sql) or die("Impossible de sélectionner ces sous-programmes");
$num = mysql_num_rows($res) or die("Impossible de calculer le nombre de sous-programmes");
while($val = mysql_fetch_array($res)){

if($valCheck[$val[numsous]){

echo 'valeur selectionner'.$val[numsous].'
';



}



}


voila la ca devrais fonctionner


krevette ;-)