Page 1 sur 1

Le Foreach

Posté : 28 févr. 2012, 10:20
par Dom!
Bonjour,

J'essai d'utiliser Foreach mais je ne comprend certaines choses.

Quand je fais ceci :
 <?php  
 mysql_select_db($database_SAGIP, $SAGIP);
$lastinsert = $_POST['last'];
$choix = array ($_POST['choix']);
$franchise = array ($_POST['franchise']);
$compagnie = array ($_POST['compagnie']);
foreach($_POST['choix'] as $choix) {

$requete = "INSERT INTO tb_garanties VALUES (0,'".$lastinsert."', '".$choix."', '".$compagnie."', '".$franchise."')";
$resultat = mysql_query($requete);
 		}
//echo "<meta http-equiv=\"refresh\" content=\"2; url=index.php?critere=$critere&msg=ajoutg\">"; ?>
L'insertion se fait correctement pour $choix mais pour $franchise et $compagnie j'ai un Array... cose que je comprend facilement, j'ai donc essayé de rajouter un foreach ( "foreach($_POST['franchise'] as $franchise) {" ) mais ca ne fonctionne pas non plus.

Pourriez vous me dire comment faire pour ajouter la compagnie et la franchise correspondant à choix ?

MErci pour votre aide.

Re: Le Foreach

Posté : 28 févr. 2012, 10:29
par Mazarini
foreach($_POST['choix'] as $index=>$choix) {
Et tu utilise $index pour accéder aux autres tableaux.

Re: Le Foreach

Posté : 28 févr. 2012, 10:38
par Dom!
J'ai modifié mon code mais il m'enregistre dans ma base les infos en 5 fois...!

Je ne comprend pas...

Re: Le Foreach

Posté : 28 févr. 2012, 10:45
par xTG
Montres nous ton code. ^^

Re: Le Foreach

Posté : 28 févr. 2012, 10:53
par Dom!
Voila !
<?php  
 mysql_select_db($database_SAGIP, $SAGIP);
$lastinsert = $_POST['last'];
$choix = array ($_POST['choix']);
$franchise = array ($_POST['franchise']);
$compagnie = array ($_POST['compagnie']);
foreach($_POST['choix'] as $index => $choix) {
foreach($_POST['franchise'] as $index => $franchise) {
$requete = "INSERT INTO tb_garanties VALUES (0,'".$lastinsert."', '".$choix."', '".$compagnie."', '".$franchise."')";
$resultat = mysql_query($requete);
 		}
	}
//echo "<meta http-equiv=\"refresh\" content=\"2; url=index.php?critere=$critere&msg=ajoutg\">"; ?>
Merci pour votre aide.

Re: Le Foreach

Posté : 28 févr. 2012, 11:03
par Thibaud C
Euh la tu vas enregistrer chaque choix pour chaque franchise ( donc le choix sera enregistré autant de fois que tu as de franchise ), c'est ton objectif ?

Re: Le Foreach

Posté : 28 févr. 2012, 11:09
par Dom!
Non je souhaite que chaque choix et sa franchise et sa compagnie...

Re: Le Foreach

Posté : 28 févr. 2012, 11:34
par Thibaud C
Le mieux pour qu'on comprenne bien ce serait que tu nous montres ton formulaire.. car la :)

Re: Le Foreach

Posté : 28 févr. 2012, 11:40
par Mazarini
Ce que je voulais dire, c'est plutot :
foreach($_POST['choix'] as $index => $choix) {
   $franchise = $_POST['franchise'][$index];
   ...
}

Re: Le Foreach

Posté : 28 févr. 2012, 11:55
par Thibaud C
Ce que je voulais dire, c'est plutot :
foreach($_POST['choix'] as $index => $choix) {
   $franchise = $_POST['franchise'][$index];
   ...
}
Ce système ne marche que pour un type de post construit de façon bien spécifique, pas forcement dans son cas. Pour ça il faudrait voir le formulaire :)

Re: Le Foreach

Posté : 28 févr. 2012, 12:26
par Dom!
Merci Thibaud !
Effectivement ça fonctionne parfaitement.

Problème résolu !


MERCI !

Re: Le Foreach

Posté : 28 févr. 2012, 12:34
par Thibaud C
Merci Thibaud !
Effectivement ça fonctionne parfaitement.

Problème résolu !


MERCI !
Oula ne me remercie pas moi au contraire, je t'aurais fait perdre du temps a me lire ^^.
Je m'incline, Mazarini tu dois être devin =)