|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Re-bonjour à nouveau à tous,
Voilà je me retourne encore vers vous pour régler un problème que je conceptualise très bien mais que je n'arrive pas à mettre en oeuvre. J'ai un formulaire avec ce code : Code :
Je récupère mes données via un $_POST['nom_variable'] (mais est-ce qu'il récupère toutes les valeurs dans un array ???), je fais une boucle foreach ou while pour traiter chaque UPDATE et le tour est joué...quelqu'un peut-il m'aider ? Merci d'avance. Jérôme |
||
|
|
00
|
|
|
#2 | |
|
Membre éclairé
![]() ![]() |
Qu'est ce que tu entends par UPDATE MULTIPLE.
Est-ce que tu peux montrer la table qui est censé être mise à jour. Si tous ces champs sont dans une table, un seul UPDATE suffit. Peut-tu nous en dire un peu plus!
__________________
Ingénieur Web Freelance - Firehist Studio Profil Viadeo Benjamin Longearet Geekos.fr : Blog technique sur les technologies du Web --- Citation:
|
|
|
00
|
|
|
#3 | |||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Citation:
La table concernée : Code :
Jérôme |
|||
|
|
00
|
|
|
#4 | |
|
Membre éclairé
![]() ![]() |
Le formulaire que tu nous montre ne concerne qu'un seul enregistrement. Tu veux donc mettre à jour tous les champs de ce formulaire dans ta table?
Si c'est le cas tu construit ta requête simplement: Code :
UPDATE ime_constituer SET champ1 = "val1", etc WHERE num_enfant_C = "val1" AND num_item_C = "val2" AND num_exercice_C = ""; Bon dév'
__________________
Ingénieur Web Freelance - Firehist Studio Profil Viadeo Benjamin Longearet Geekos.fr : Blog technique sur les technologies du Web --- Citation:
|
|
|
00
|
|
|
#5 | |||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Citation:
Code :
Merci pour votre aide. Jérôme |
|||
|
|
00
|
|
|
#6 | |||||
|
Membre éclairé
![]() ![]() |
Salut,
Dans ce cas il faut que tu formate un peu mieux ton formulaire: Code :
Code :
__________________
Ingénieur Web Freelance - Firehist Studio Profil Viadeo Benjamin Longearet Geekos.fr : Blog technique sur les technologies du Web --- Citation:
|
|||||
|
10
|
|
|
#7 |
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Ok merci à toi firehist.
Je vais tester ton code et je te tiens au courant. @+ Jérôme |
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Ok firehist : ton code fonctionne à merveille et j'ai compris...en fait cela crée un tableau que je récupère par l'intermédiaire du $_POST et je traite le tout dans un UPDATE avec une boucle pour parcourir tout le tableau...arrête moi si je me trompe ! ! !
Mais voilà, autant je sais le faire avec un enregistrement unique (ci-dessous un exemple avec la table ime_enfant où j'ai récupéré chaque valeur par un $_POST et que je traite par une requête préparée en PDO)... Code :
Jérôme |
||
|
|
00
|
|
|
#9 |
![]() ![]() |
Dans la discussion précédente, je t'ai donné un lien vers une discussion qui indique comment utiliser les requêtes préparées.
Donc tu fais le "prepare" hors de la boucle et le "execute" dans la boucle.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Merci CinePhil pour ton indication sur la boucle...et il est vrai que j'ai regardé d'un peu trop loin ton lien
sur les requêtes préparées...je m'y mets pour essayer de piger le truc.Encore un grand merci à vous deux pour votre aide. @+ Jérôme |
|
|
00
|
|
|
#11 | ||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Voilà le code suivant qui indique comment on effectue une requête INSERT en y substituant un nom et une valeur pour les marqueurs nommés (cf site php.net) :
Code :
![]() Merci @+ Jérôme |
||
|
|
00
|
|
|
#12 | ||||
![]() ![]() |
Il faut te mâcher le boulot toi !
Tu démarres la boucle sur ton tableau entre ceci : Code :
Code :
Et n'oublie pas avant le "prepare" le paramètre marqué dans le lien que je t'ai donné : Code :
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||||
|
00
|
|
|
#13 | |
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Citation:
Je vais essayer...je vous tiens au courant Merci @+ Jérôme |
|
|
|
00
|
|
|
#14 | ||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Bonsoir à tous,
Toujours en galère avec cette @@@@@ de boucle... Quelqu'un peut il me mettre sur la piste... Code :
Jérôme |
||
|
|
00
|
|
|
#15 | ||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Bon, j'ai un peu progressé mais il me reste un problème qui je crois est simple à résoudre mais je bloque et j'ai besoin d'un oeil neuf.
Comment je formatte le tableau ? Par exemple : $_POST['$ime[$i]$num_enfant'] n'est pas bon... Pouvez-vous m'aider ? Merci Jérôme Code :
|
||
|
|
00
|
|
|
#16 | |||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Bonjour à tous,
Voilà j'ai presque réussi à faire fonctionner mon code ci-dessous... Code :
Citation:
@+ Jérôme |
|||
|
|
00
|
|
|
#17 | |||||
![]() ![]() |
Pas sûr que ce soit la cause de l'erreur mais ta requête ne va pas :
Citation:
Dans ta requête, il n'y a que "guidance_C" et "obs_C" qui peuvent changer de valeur ! Si tu sélectionnes les lignes avec les conditions que tu a mises dans le WHERE, supprime ces colonnes du SET : Code SQL :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|||||
|
00
|
|
|
#18 | ||||
|
Invité de passage
![]() Inscription : novembre 2008 Messages : 35 ![]() |
Merci CinePhil pour ta solution, je venais juste de me rendre compte de ce problème avec un autre code que j'avais déjà fait.
Maintenant ma page fonctionne nickel. Encore un grand merci à tous ceux qui m'ont aidé à réaliser ce travail. @+ Jérôme PS : Pour info je remets le code (cela peut toujours servir à quelqu'un) : Le formulaire de départ : Code :
Code :
|
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com