Boucle / checkbox / mysql

Résolu
cseagle Messages postés 99 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 5 août 2009 - 10 mars 2005 à 22:11
cseagle Messages postés 99 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 5 août 2009 - 11 mars 2005 à 00:03
Bonsoir à tous,



Voila j'ai un code qui m'affiche plusieurs checkbox dans une boucle avec comme nom de variable $nom + le numéro incrémenté.



Je ne sais pas comment faire une boucle qui explode le nom (identique) et le numéro pour l'enregistrer dans ma base.



Voici mon code d'affichage :



$reqsites = mysql_db_query($db_base,"SELECT * FROM ".$pref."sites",$db) or die(mysql_error());

$i=0;

while($sites = mysql_fetch_row($reqsites)) {

echo' '.$sites['1'].' '."\n";

$i++;

}



Ce que je veux donc c'est récupérer les valeurs des checkbox cochées
pour les enregistrer à l'aide d'une boucle dans ma table sites (champs
: id - site).



Ca m'avait l'air tout con et du coup je sais pas comment m'y prendre.



Un peu d'aide serait le bienvenue



Cseagle

2 réponses

JeanPoldeux Messages postés 64 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 août 2005
10 mars 2005 à 23:07
Dans ta balise <form> qui précède tes balises
, tu indiques le nom du script qui traitera les checkboxes
selectionnées.(Ex: "enregistre.php") Dans celui-ci, tu pourras
récupérer les valeurs des sites choisis. Voici un exemple:



<?php

//Script qui affiche le formulaire

echo "<FORM action='enregistre.php' method='post'>";



//Requête

$reqsites = mysql_db_query($db_base,"SELECT * FROM ".$pref."sites",$db) or

die(mysql_error());



//Affichage des cases à cocher

$i=0;

while($sites=mysql_fetch_row($reqsites))

{

echo "".$sites[1]." \n";

$i++;

}



//Affiche le nombre de checkboxes pour la boucle de récupération

echo "";



//Fermeture du formulaire

echo "</form>";

?>



Dans enregistre.php tu pourras insérer comme ceci

<?php



//Récupérer le nombre de checkboxes dans le champ caché.

$nbBox=$_POST["nbchamp"];




//Ouverture connexion MYSQL


$id=mysql_connect("srv","usr","pwd");

mysql_select_db("base",$id);




//Boucle d'insertion

for($i=0;$i<$nbBox;$i++)

{


//Debut de la requête


$query="INSERT INTO sites(id,site) VALUES('','".$_POST["site".$i]."')";

mysql_query($query,$id);


}




//Fermeture

mysql_close($id);

?>



Jean Poldeux



Every problem has a solution. The difficulty is to find it
3
cseagle Messages postés 99 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 5 août 2009
11 mars 2005 à 00:03
Merci beaucoup ca marche nikel ;-)
0
Rejoignez-nous