Demande d’explication
Ibnomar
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour,
Svp, j’ai besoin d’explications. J’ai fait un formulaire avec plusieurs informations (ce fut avec votre aide même ????????????). Maintenant j’aimerai récupéré tous les donnés avec un seul submit. Voici le formulaire:
<input type="text" name="personne[1][nom]" value="Francois"> <br/>
<label><input type="checkbox" name="personne[1][profil][]" value ="courageux">Courageux</label> <br/>
<label><input type="checkbox" name="personne[1][profil][]" value ="gentil">Gentil</label> <br/>
<label><input type="checkbox" name="personne[1][profil][]" value ="ouvert">Ouvert</label> <br/>
<input type="text" name="personne[2][nom]" value="Alice"> <br/>
<label><input type="checkbox" name="personne[2][profil][]" value ="courageux">Courageux</label> <br/>
<label><input type="checkbox" name="personne[2][profil][]" value ="gentil">Gentil</label> <br/>
<label><input type="checkbox" name="personne[2][profil][]" value ="ouvert">Ouvert</label> <br/>
<input type="text" name="personne[2][nom]" value="Yohan"> <br/>
<label><input type="checkbox" name="personne[3][profil][]" value ="courageux">Courageux</label> <br/>
<label><input type="checkbox" name="personne[3][profil][]" value ="gentil">Gentil</label> <br/>
<label><input type="checkbox" name="personne[3][profil][]" value ="ouvert">Ouvert</label> <br/>
<input type="submit " value="Envoi "> <br/>
Je veux que pour chaque profile choisi , je puisse affiche le nom de la personne suivi de son profile , comme :
Francois : ouvert
Yohan : courageux
Francois : courageux
Alice : gentil
Yohan : ouvert
J’ai donc essayé le code de récupération suivant : foreach ($_POST[personne [profile] ]as
$P ) echo ‘$_POST[personne[nom]].’ ‘.$p.’<br/>’;
Mais on affiche l’erreur : Invalid argument provided to Foreach . Pouvez vous m’expliquer cela ?
Pourtant quand je met foreach ($_POST[personne[nom]] as $p ) { echo ‘$p.’ .’ $p [profile] ; } combiné à un “implode” j’arrive à afficher ça sans problème mais cela affiche :
Francois : sense, courageux
Alice : gentil , sensé .
Pourtant je ne veux pas récupérer ça de cette manière mais plutôt
Francois : ouvert
Yohan : courageux
Francois : courageux
Alice : gentil.
Éclaircissez moi svp ????????????
Svp, j’ai besoin d’explications. J’ai fait un formulaire avec plusieurs informations (ce fut avec votre aide même ????????????). Maintenant j’aimerai récupéré tous les donnés avec un seul submit. Voici le formulaire:
<input type="text" name="personne[1][nom]" value="Francois"> <br/>
<label><input type="checkbox" name="personne[1][profil][]" value ="courageux">Courageux</label> <br/>
<label><input type="checkbox" name="personne[1][profil][]" value ="gentil">Gentil</label> <br/>
<label><input type="checkbox" name="personne[1][profil][]" value ="ouvert">Ouvert</label> <br/>
<input type="text" name="personne[2][nom]" value="Alice"> <br/>
<label><input type="checkbox" name="personne[2][profil][]" value ="courageux">Courageux</label> <br/>
<label><input type="checkbox" name="personne[2][profil][]" value ="gentil">Gentil</label> <br/>
<label><input type="checkbox" name="personne[2][profil][]" value ="ouvert">Ouvert</label> <br/>
<input type="text" name="personne[2][nom]" value="Yohan"> <br/>
<label><input type="checkbox" name="personne[3][profil][]" value ="courageux">Courageux</label> <br/>
<label><input type="checkbox" name="personne[3][profil][]" value ="gentil">Gentil</label> <br/>
<label><input type="checkbox" name="personne[3][profil][]" value ="ouvert">Ouvert</label> <br/>
<input type="submit " value="Envoi "> <br/>
Je veux que pour chaque profile choisi , je puisse affiche le nom de la personne suivi de son profile , comme :
Francois : ouvert
Yohan : courageux
Francois : courageux
Alice : gentil
Yohan : ouvert
J’ai donc essayé le code de récupération suivant : foreach ($_POST[personne [profile] ]as
$P ) echo ‘$_POST[personne[nom]].’ ‘.$p.’<br/>’;
Mais on affiche l’erreur : Invalid argument provided to Foreach . Pouvez vous m’expliquer cela ?
Pourtant quand je met foreach ($_POST[personne[nom]] as $p ) { echo ‘$p.’ .’ $p [profile] ; } combiné à un “implode” j’arrive à afficher ça sans problème mais cela affiche :
Francois : sense, courageux
Alice : gentil , sensé .
Pourtant je ne veux pas récupérer ça de cette manière mais plutôt
Francois : ouvert
Yohan : courageux
Francois : courageux
Alice : gentil.
Éclaircissez moi svp ????????????
A voir également:
- Demande d’explication
- Foyer netflix explication - Accueil - Guide streaming
- Paris multiple 2/6 explication - Forum Loisirs / Divertissements
- Chambre 1408 explication fin ✓ - Forum Cinéma / Télé
- Explication pour une curieuse ✓ - Forum Mozilla Firefox
- Another earth explication fin - Forum Cinéma / Télé
1 réponse
Bonjour,
Commence par faire un print_r($_POST) et regarde ce que ça contient...
Tu y verras des array....
bref...
Commence par faire un print_r($_POST) et regarde ce que ça contient...
Tu y verras des array....
bref...
//on commence par récupérer PROPREMENT les variables AVANT de les utiliser !!!
$a_personnes = !empty($_POST['personne']) ? $_POST['personne'] : NULL;
// ensuite... on peut boucler sur chaque personne
if(!empty($a_personnes )){
foreach($a_personnes as $P){
echo " nom : " . $P['nom'];
// on récupère les profils :
$a_profil = !empty($P['profil']) ? $P['profil'] : NULL;
if(!empty($a_profil )){
//on boucle sur les profils
foreach(a_personnes as $prof){
echo $prof;
}
}
}