Récupération plusieurs variables
Fermé
caro__48
Messages postés
242
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
18 mai 2017
-
Modifié par jordane45 le 12/11/2015 à 09:50
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 - 12 nov. 2015 à 15:04
jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 - 12 nov. 2015 à 15:04
A voir également:
- Récupération plusieurs variables
- Convertisseur récupération de texte - Guide
- Recuperation video youtube - Guide
- Recuperation compte gmail - Guide
- Récupération message whatsapp - Guide
- Mode recuperation samsung - Guide
3 réponses
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
12 nov. 2015 à 09:54
12 nov. 2015 à 09:54
Bonjour,
1 - Je ne vois pas l'écriture ternaire pour la récupération des variables
2 - Tu utilises l'ancienne extension mysql (considérée comme obsolète).
Je t'invite à lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
3 - Si tu crées des inputs dynamiquement... il faut donc les traiter comme des array...
pour cela il faut que tu ajoutes des "[]" dans leurs noms
Ensuite tu pourras faire des boucles dessus.
1 - Je ne vois pas l'écriture ternaire pour la récupération des variables
$id_adh =isset($_POST['id_adh'])?$_POST['id_adh']:'';
2 - Tu utilises l'ancienne extension mysql (considérée comme obsolète).
Je t'invite à lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
3 - Si tu crées des inputs dynamiquement... il faut donc les traiter comme des array...
pour cela il faut que tu ajoutes des "[]" dans leurs noms
<input type="hidden" name="id_adh[]" value="<?php echo $val->id_adh?>"/>
Ensuite tu pourras faire des boucles dessus.
caro__48
Messages postés
242
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
18 mai 2017
61
12 nov. 2015 à 12:31
12 nov. 2015 à 12:31
Ben j'ai essayer mais je n'arrivai pas a faire mon foreach.. En fait j'ai fait 2 tests.
Page 1
Page 2:
Mais le résultat avec ça c'est:
Notice: Undefined index: in C:\Program Files (x86)\EasyPHP-12.1\www\Systeme_Achat_Nvlle_version_10_2014\AdMiN062014\EXPORT\transerft_HisT0r1que\Requete_insert_into.php on line 48
Warning: Invalid argument supplied for foreach() in C:\Program Files (x86)\EasyPHP-12.1\www\Systeme_Achat_Nvlle_version_10_2014\AdMiN062014\EXPORT\transerft_HisT0r1que\Requete_insert_into.php on line 48
Du coup je me suis dit qu'il fallait mettre un argument dans les [] de la page 1 pour le spécifier dans le foreach..
Page 1
<input type="hidden" name="id_adh[]" value="<?php echo $val->id_adh?>"/>
<td align="center" >
<b style="color:#2b8dd1";>
<input type="hidden" name="nom_adh[]" value=" <?php echo $val->nom_adh?>"/> <?php echo $val->nom_adh?></b>
</td>.....
Page 2:
$ligne['id_adh'] = isset($_POST['id_adh']) ? $_POST['id_adh'] : '';
$ligne['qt_cde'] = isset ($_POST['qt_cde']) ? $_POST['qt_cde'] : '';
$ligne['date_commande'] = isset ($_POST['date']) ? $_POST['date'] : '';
$ligne['id_produit'] = isset ($_POST['id_produit']) ? $_POST['id_produit'] : '';
$ligne['etat'] = isset ($_POST['etat']) ? $_POST['etat'] : '';
$ligne['PVC'] = isset ($_POST['PVC']) ? $_POST['PVC'] : '';
$ligne['PA'] = isset ($_POST['PA']) ? $_POST['PA'] : '';
$ligne['Date_L'] = isset ($_POST['DL']) ? $_POST['DL'] : '';
$ligne['logo'] = isset ($_POST['logo']) ? $_POST['logo'] : '';
$ligne['saisie_adh'] = isset ($_POST['qt_commande']) ? $_POST['qt_commande'] : '';
print_r($_POST);
foreach( $_POST['']as $ligne) {
$requete1 =mysql_query ("INSERT INTO historique_commandes (`id_adh`, `id_produit`, `PA`, `PVC`, `Saisie_adh`, `qt_commande`, `Etat`, `date_livraison`, `fournisseur`, `date_commande`) VALUES ('". $ligne['id_adh'] ."', '".$ligne['id_produit']."', '".$ligne['PA']."', '".$ligne['PVC']."', '".$ligne['saisie_adh']."', '".$ligne['qt_cde']."', '".$ligne['etat']."', '".$ligne['Date_L']."','".$ligne['logo']."','".$ligne['date_commande']."')") or die ("Problème Réseau, veuillez contacter la centrale. Erreur = ".mysql_error());
Mais le résultat avec ça c'est:
Notice: Undefined index: in C:\Program Files (x86)\EasyPHP-12.1\www\Systeme_Achat_Nvlle_version_10_2014\AdMiN062014\EXPORT\transerft_HisT0r1que\Requete_insert_into.php on line 48
Warning: Invalid argument supplied for foreach() in C:\Program Files (x86)\EasyPHP-12.1\www\Systeme_Achat_Nvlle_version_10_2014\AdMiN062014\EXPORT\transerft_HisT0r1que\Requete_insert_into.php on line 48
Du coup je me suis dit qu'il fallait mettre un argument dans les [] de la page 1 pour le spécifier dans le foreach..
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
12 nov. 2015 à 13:41
12 nov. 2015 à 13:41
Vas y par étape ....
Dans ta page 2 ... ne mets que :
Puis regardes ce que ça te donne....
Tu vas voir un ARRAY contenant tes différentes variables..... et donc... comment tu devras boucler dessus par la suite...
Dans ta page 2 ... ne mets que :
<?php //affichage du contenu de POST print_r($_POST);
Puis regardes ce que ça te donne....
Tu vas voir un ARRAY contenant tes différentes variables..... et donc... comment tu devras boucler dessus par la suite...
caro__48
Messages postés
242
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
18 mai 2017
61
12 nov. 2015 à 14:51
12 nov. 2015 à 14:51
J'ai l'affichage de mon array, Mais comment tu fais pour boucler sur un affichage de tableau?
jordane45
Messages postés
38321
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
1 décembre 2024
4 707
12 nov. 2015 à 15:04
12 nov. 2015 à 15:04
L'affichage du tableau... c'est juste pour que tu comprennes comment est structuré cet 'array'
et donc comment tu devras boucler dessus...
et donc comment tu devras boucler dessus...
12 nov. 2015 à 10:16
J'ai fait ça entre temps pour la récupération de mes variables:
$id_adh = isset($_POST['id_adh[]']) ? $_POST['id_adh[]'] : '';
$qt_cde = isset ($_POST['qt_cde[]']) ? $_POST['qt_cde[]'] : '';
$date_commande = isset ($_POST['date[]']) ? $_POST['date[]'] : '';
$id_produit = isset ($_POST['id_produit[]']) ? $_POST['id_produit[]'] : '';
$etat = isset ($_POST['etat[]']) ? $_POST['etat[]'] : '';
$PVC = isset ($_POST['PVC[]']) ? $_POST['PVC[]'] : '';
$PA = isset ($_POST['PA[]']) ? $_POST['PA[]'] : '';
$Date_L = isset ($_POST['DL[]']) ? $_POST['DL[]'] : '';
$logo = isset ($_POST['logo[]']) ? $_POST['logo[]'] : '';
$saisie_adh = isset ($_POST['qt_commande[]']) ? $_POST['qt_commande[]'] : '';
(donc j'ai écouté tes conseils)
En ce qui concerne l'ancienne extension, j'ai bien lu le doc. Mais pour l'instant il faut vraiment que j'arrive a faire fonctionner ma requete. Il fois que cela marchera je travaillerai en local pour faire évoluer en une bonne version.
Je suis en train d'essayer de mettre les [] dans leurs noms.
Il faut rien que je mette dans les []? Car pour l'instant cela retourne des variables à 0...
12 nov. 2015 à 10:30
12 nov. 2015 à 12:14
et dans ma page 2
Mais il me dit que mes index ne sont pas définis!
Notice: Undefined index: logo in C:\Program File.... Sauf pour le 1er id_adh qu'il prend en compte:
Résultat de la requete à l'affichage:
INSERT INTO historique_commandes (`id_adh`, `id_produit`, `PA`, `PVC`, `Saisie_adh`, `qt_commande`, `Etat`, `date_livraison`, `fournisseur`, `date_commande`) VALUES ('27', '', '', '', '', '', '', '','','')
12 nov. 2015 à 12:23