par
cLESE02 » 03 juin 2014, 18:42
Bonjour;
J'ai fait une boucle foreach pour récupérer un id et pouvoir faire un insert dans ma table à chaque résultat, ça marche sauf que l'id que je récupère reste celui du premier résultat qui passe dans la boucle et je ne vois pas pourquoi.
Le $login je le récupère plus haut dans la page, il n'y a que $id_secteur que je récupère dans le foreach.
Le code:
//récup la valeurs des checkbox cochées
$checksecteur = implode(' - ', $_POST['options']);
//explode $checksecteur pour récupérer les secteurs
$splitsecteur = explode("-", $checksecteur);
//boucle pour chaque résultat de $splitsecteur
foreach ($splitsecteur as $rows)
{
$req1=$connexion->query("select * from secteuractivite where libelle_secteur='$rows'");
while($ligne=$req1->fetch()) //pour chaque ligne de splitsecteur récupère les infos du secteur
{
$id_secteur=$ligne['id_secteur']; // donne l'id du secteur
}
//insert l'id du secteur, le libelle du secteur ainsi que l'id de l'établissement
$req=$connexion->query("INSERT INTO secteur_etab(id_secteur,id_etab,libelle_secteur) VALUES('$id_secteur','$login','$rows')");
}
extrait de la BDD:
http://img4.hostingpics.net/pics/910738Capture.png
On voit que l'insert fonctionne mais que l'id du secteur reste celui du premier résultat, donc voilà si quelqu'un à une idée de mon erreur ou s'il y a plus simple pour récupérer les valeurs de plusieurs checkbox je suis prenneur
Merci

Bonjour;
J'ai fait une boucle foreach pour récupérer un id et pouvoir faire un insert dans ma table à chaque résultat, ça marche sauf que l'id que je récupère reste celui du premier résultat qui passe dans la boucle et je ne vois pas pourquoi.
Le $login je le récupère plus haut dans la page, il n'y a que $id_secteur que je récupère dans le foreach.
Le code:
[php]//récup la valeurs des checkbox cochées
$checksecteur = implode(' - ', $_POST['options']);
//explode $checksecteur pour récupérer les secteurs
$splitsecteur = explode("-", $checksecteur);
//boucle pour chaque résultat de $splitsecteur
foreach ($splitsecteur as $rows)
{
$req1=$connexion->query("select * from secteuractivite where libelle_secteur='$rows'");
while($ligne=$req1->fetch()) //pour chaque ligne de splitsecteur récupère les infos du secteur
{
$id_secteur=$ligne['id_secteur']; // donne l'id du secteur
}
//insert l'id du secteur, le libelle du secteur ainsi que l'id de l'établissement
$req=$connexion->query("INSERT INTO secteur_etab(id_secteur,id_etab,libelle_secteur) VALUES('$id_secteur','$login','$rows')");
}[/php]
extrait de la BDD:
http://img4.hostingpics.net/pics/910738Capture.png
On voit que l'insert fonctionne mais que l'id du secteur reste celui du premier résultat, donc voilà si quelqu'un à une idée de mon erreur ou s'il y a plus simple pour récupérer les valeurs de plusieurs checkbox je suis prenneur :)
Merci :)