Récupérer les données d'une liste php sur une base sql
Fermé
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
-
30 mai 2013 à 08:28
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 - 3 juin 2013 à 16:51
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 - 3 juin 2013 à 16:51
A voir également:
- Récupérer les données d'une liste php sur une base sql
- Liste déroulante excel - Guide
- Comment récupérer les messages supprimés sur whatsapp - Guide
- Comment recuperer une video sur youtube - Guide
- Liste déroulante en cascade - Guide
- Supprimer les données de navigation - Guide
20 réponses
Salut,
Sur la deuxième ligne de ton code qui récupère les données :
tu définis la variable $donateur en tant que tableau (Array) avec les crochets.
Bonne journée
Sur la deuxième ligne de ton code qui récupère les données :
$donateur[]=$_POST['donateur'];
tu définis la variable $donateur en tant que tableau (Array) avec les crochets.
Bonne journée
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
30 mai 2013 à 14:42
30 mai 2013 à 14:42
ben justement, je récupère la mention array dans ma base SQL mais pas ce que l'internaute a posté... c'est à dire son nom...
que dois-je faire pour obtenir le nom renseigné par l'internaute à l'intérieur de l'array ?
merci d'avance
que dois-je faire pour obtenir le nom renseigné par l'internaute à l'intérieur de l'array ?
merci d'avance
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
30 mai 2013 à 15:29
30 mai 2013 à 15:29
Salut !
<input name="donateur[]" type="text" />
Le fait de mettre des [] déclare $_POST['donateur'] comme un tableau. On utilise généralement ce systeme quand on veut récupéré des checkbox ou beaucoup de données qui laisse le choix l'utilisateur de les remplir ou non.
Donc essaye avec donateur tout court, cu coup tu peux faire :
$donateur=$_POST['donateur']; // Pas d'erreur
Et donc :
$selectcadeau = "UPDATE alicia SET quantite=1, nom='$donateur', mail='$mail', date_enregistrement='$date_enregistrement' WHERE cadeau= '$quantite'";
n'aura pas d'erreur non plus
<input name="donateur[]" type="text" />
Le fait de mettre des [] déclare $_POST['donateur'] comme un tableau. On utilise généralement ce systeme quand on veut récupéré des checkbox ou beaucoup de données qui laisse le choix l'utilisateur de les remplir ou non.
Donc essaye avec donateur tout court, cu coup tu peux faire :
$donateur=$_POST['donateur']; // Pas d'erreur
Et donc :
$selectcadeau = "UPDATE alicia SET quantite=1, nom='$donateur', mail='$mail', date_enregistrement='$date_enregistrement' WHERE cadeau= '$quantite'";
n'aura pas d'erreur non plus
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
30 mai 2013 à 15:44
30 mai 2013 à 15:44
ben non, ca marche pô :-(
maintenant la condition n'est plus remplie et j'ai le message d'erreur correspondant ci-dessous ??
il considère que donateur n'est pas renseigné alors qu'il l'est.
J'ai retiré les [] dans mon formulaire et ai indiqué $donateur=$_POST['donateur']; dans le fichier de traitement des données ??
une autre idée ?
Merci à vous
maintenant la condition n'est plus remplie et j'ai le message d'erreur correspondant ci-dessous ??
if ($donateur=="") print ("<div class=\"blanc\"><br/><br/><strong>Vous n'avez pas indiqué votre nom ?<br/><br/>Cliquez sur précédent dans votre navigateur, ou sur le bouton, ci-dessous, pour revenir sur la page de liste de naissance</strong><br/><br/><a href=\"liste.php\"><img align=\"center\" src=\"http://www./alicia/images/bouton_orange.gif\"></a></font></div>");
il considère que donateur n'est pas renseigné alors qu'il l'est.
J'ai retiré les [] dans mon formulaire et ai indiqué $donateur=$_POST['donateur']; dans le fichier de traitement des données ??
une autre idée ?
Merci à vous
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
30 mai 2013 à 15:56
30 mai 2013 à 15:56
Fais voir un print_r($_POST) et dis moi ce qu'il affiche :)
Sinon, pour vérivier les variables envoyées en post, on fait :
if(isset($_POST['blabla']) == !empty($_POST['blabla']))
Tu peux donc avec ce systeme, vérifier tous tes champs dans le if, et redirigé vers la page d'avant si ils ne sont pas rempli.
Exemple :
if(isset($_POST['quantite']) && !empty($_POST['quantite']) && isset($_POST['donateur']) && !empty($_POST['donateur'])) // Les champs sont bien renseignés
{
// Tu fais ton update
}
else
{
header('Location:listenaissance.php');
exit();
}
Sinon, pour vérivier les variables envoyées en post, on fait :
if(isset($_POST['blabla']) == !empty($_POST['blabla']))
Tu peux donc avec ce systeme, vérifier tous tes champs dans le if, et redirigé vers la page d'avant si ils ne sont pas rempli.
Exemple :
if(isset($_POST['quantite']) && !empty($_POST['quantite']) && isset($_POST['donateur']) && !empty($_POST['donateur'])) // Les champs sont bien renseignés
{
// Tu fais ton update
}
else
{
header('Location:listenaissance.php');
exit();
}
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
30 mai 2013 à 16:13
30 mai 2013 à 16:13
C'est bizarre, j'ai insérer le print_r comme tu me l'as demandé et mis une mise en forme (fond blanc police rose)
(
je l'ai mis juste après la condition if ($_POST['valider']=="ok")
mais voici ce que le fichier de traitement m'affiche en noir :
Array ( [donateur] => [quantite] => Porte bébé hamac [mail] => [valider] => ok )
puis en dessous et mis en forme cette fois-ci :
1
Je teste ta proposition de condition et te reviens.
Merci de ton aide.
(
echo "<div class=\"blanc\"><br/><br/>".print_r($_POST)."</div>";)
je l'ai mis juste après la condition if ($_POST['valider']=="ok")
mais voici ce que le fichier de traitement m'affiche en noir :
Array ( [donateur] => [quantite] => Porte bébé hamac [mail] => [valider] => ok )
puis en dessous et mis en forme cette fois-ci :
1
Je teste ta proposition de condition et te reviens.
Merci de ton aide.
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
30 mai 2013 à 16:20
30 mai 2013 à 16:20
Ok donc avec :
Array ( [donateur] => [quantite] => Porte bébé hamac [mail] => [valider] => ok )
Tu vois bien que donateur est vide, que quantite contient "Porte bébé hamac", que mail est vide également, et que valider contient "ok"
Donc ton problème venait de là, tu ne vérifiais pas bien que tes champs étaient bien rempli.
Donc oui essaye ce que je t'ai proposé, ca devrait déjà être plu propre et correct :)
Array ( [donateur] => [quantite] => Porte bébé hamac [mail] => [valider] => ok )
Tu vois bien que donateur est vide, que quantite contient "Porte bébé hamac", que mail est vide également, et que valider contient "ok"
Donc ton problème venait de là, tu ne vérifiais pas bien que tes champs étaient bien rempli.
Donc oui essaye ce que je t'ai proposé, ca devrait déjà être plu propre et correct :)
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
30 mai 2013 à 16:35
30 mai 2013 à 16:35
alors j'ai inséré ton code de vérification
et voici ce que j'obtiens...
Array ( [donateur] => Array ( [0] => [1] => [2] => [3] => test [4] => [5] => [6] => ) [quantite] => et l'Audi R8 pour les jours pluvieux [mail] => [valider] => ok )
retour à la case départ... car non seulement cela crée un array, mais en plus, il ne met pas à jour la BDD :-((
qu'est ce que j'ai mal fait ??
if ($_POST['valider']=="ok") { echo "<div class=\"blanc\"><br/><br/>".print_r($_POST)."</div>"; if(isset($_POST['quantite']) && !empty($_POST['quantite']) && isset($_POST['donateur']) && !empty($_POST['donateur'])) // if (($quantite=="")||($donateur=="")) { if ($quantite=="") print ("<div class=\"blanc\"><br/><br/><strong>Vous n'avez rien sélectionné ? <br/><br/>Cliquez sur précédent dans votre navigateur, ou sur le bouton, ci-dessous, pour revenir sur la page de liste de naissance</strong><br/><br/><a href=\"liste.php\"><img align=\"center\" src=\"http://www./alicia/images/bouton_orange.gif\"></a></font></div>"); if ($donateur=="") print ("<div class=\"blanc\"><br/><br/><strong>Vous n'avez pas indiqué votre nom ?<br/><br/>Cliquez sur précédent dans votre navigateur, ou sur le bouton, ci-dessous, pour revenir sur la page de liste de naissance</strong><br/><br/><a href=\"liste.php\"><img align=\"center\" src=\"http://www.alicia/images/bouton_orange.gif\"></a></font></div>"); } else { //connection à la base de données $bd=connect_bd(); if($bd<>0) { //insertion des données $selectcadeau = "UPDATE alicia SET quantite=1, nom='$donateur', mail='$mail', date_enregistrement='$date_enregistrement' WHERE cadeau= '$quantite'"; $trans_cadeau = mysql_query($selectcadeau,$bd); // Requête SQL if((!$trans_cadeau)) { die('impossible d\'exécuter la requete :'.mysql_error()); } else {
et voici ce que j'obtiens...
Array ( [donateur] => Array ( [0] => [1] => [2] => [3] => test [4] => [5] => [6] => ) [quantite] => et l'Audi R8 pour les jours pluvieux [mail] => [valider] => ok )
retour à la case départ... car non seulement cela crée un array, mais en plus, il ne met pas à jour la BDD :-((
qu'est ce que j'ai mal fait ??
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
30 mai 2013 à 16:46
30 mai 2013 à 16:46
oups, j'ai du aller trop vite (pas mis mon navigateur à jour) car en testant sur firefox voici ce que le print_r affiche :
Array ( [donateur] => [quantite] => SLK 500 cabriolet pour promener Alicia l'été [mail] => [valider] => ok )
1
et toujours pas de mise à jour de la BDD. En revanche, je recois bien le mail d'information m'indiquant que :
a sélectionné SLK 500 cabriolet pour promener Alicia l'été sur la liste de naissance d'Alicia, le 2013-05-30 14:43:40 .
Donc il y a juste le champ donateur qui ne passe pas ??
Array ( [donateur] => [quantite] => SLK 500 cabriolet pour promener Alicia l'été [mail] => [valider] => ok )
1
et toujours pas de mise à jour de la BDD. En revanche, je recois bien le mail d'information m'indiquant que :
a sélectionné SLK 500 cabriolet pour promener Alicia l'été sur la liste de naissance d'Alicia, le 2013-05-30 14:43:40 .
Donc il y a juste le champ donateur qui ne passe pas ??
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
30 mai 2013 à 16:46
30 mai 2013 à 16:46
Enlève tes if($quantite == "") et pareil pour donateur.
if(isset($_POST['quantite']) && !empty($_POST['quantite']) && isset($_POST['donateur']) && !empty($_POST['donateur']))
{
echo print_r($_POST);
try{
$bd=connect_bd();
} catch($e){
echo 'erreur de connexion à la bdd';
} // regarde la syntaxe du try catch dans la doc
extract($_POST); // revient à faire $quantite = $_POST['quantite'] et le fais pour donateur et mail
$selectcadeau = "UPDATE alicia SET quantite=1, nom='$donateur', mail='$mail', date_enregistrement='$date_enregistrement' WHERE cadeau= '$quantite'";
$trans_cadeau = mysql_query($selectcadeau,$bd);
if((!$trans_cadeau))
{
die('impossible d\'exécuter la requete :'.mysql_error());
}
}
else
{
echo 'Vous n'avez pas rempli tous les champs, blablabla';
}
if(isset($_POST['quantite']) && !empty($_POST['quantite']) && isset($_POST['donateur']) && !empty($_POST['donateur']))
{
echo print_r($_POST);
try{
$bd=connect_bd();
} catch($e){
echo 'erreur de connexion à la bdd';
} // regarde la syntaxe du try catch dans la doc
extract($_POST); // revient à faire $quantite = $_POST['quantite'] et le fais pour donateur et mail
$selectcadeau = "UPDATE alicia SET quantite=1, nom='$donateur', mail='$mail', date_enregistrement='$date_enregistrement' WHERE cadeau= '$quantite'";
$trans_cadeau = mysql_query($selectcadeau,$bd);
if((!$trans_cadeau))
{
die('impossible d\'exécuter la requete :'.mysql_error());
}
}
else
{
echo 'Vous n'avez pas rempli tous les champs, blablabla';
}
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
3 juin 2013 à 01:18
3 juin 2013 à 01:18
bouhhh...
je ne suis pas sure d'avoir été bien comprise :
Je cherche à isoler et enregistrer une variable = element d'un tableau renseigné par l'internaute.
En effet, quand je fais un print_r je vois le nom posté par l'utilisateur mais la base SQL enregiste :"array" !
De plus, la condition de vérification de remplissage du champ ($donateur) ne fonctionne pas non plus ??
Je présume qu'il faut passer par un foreach ou un while, mais je n'y arrive pas non plus de ce coté...
Quelqu'un pour m'éclairer s'il vous plait.
Merci d'avance aux bonnes ames, je reposte mon code à toutes fins utiles.
et celui qui est censé récuperer les infos :
Merci encore, à vous lire
je ne suis pas sure d'avoir été bien comprise :
Je cherche à isoler et enregistrer une variable = element d'un tableau renseigné par l'internaute.
En effet, quand je fais un print_r je vois le nom posté par l'utilisateur mais la base SQL enregiste :"array" !
De plus, la condition de vérification de remplissage du champ ($donateur) ne fonctionne pas non plus ??
Je présume qu'il faut passer par un foreach ou un while, mais je n'y arrive pas non plus de ce coté...
Quelqu'un pour m'éclairer s'il vous plait.
Merci d'avance aux bonnes ames, je reposte mon code à toutes fins utiles.
$query = "SELECT photo, quantite, cadeau, nom FROM alicia"; $trouve = mysql_query($query); ... <td width="30%"> <?php if (empty($donnees["nom"])) echo "<input name=\"donateur[]\" type=\"text\" />"; else echo $donnees["nom"]; ?> </td> </tr> <?php } mysql_close(); ?> <!-- fin de liste de choix de cadeaux-->
et celui qui est censé récuperer les infos :
$quantite=$_POST['quantite']; $donateur=$_POST['donateur']; if ($_POST['valider']=="ok") { if (($quantite=="")||($donateur=="")) { if ($quantite=="") print ("<div class=\"blanc\"><br/><br/><strong>Vous n'avez rien sélectionné ? <br/><br/>Cliquez sur précédent dans votre navigateur, ou sur le bouton, ci-dessous, pour revenir sur la page de liste de naissance</strong><br/><br/><a href=\"liste.php\"><img align=\"center\" src=\"http://www./alicia/images/bouton_orange.gif\"></a></font></div>"); if ($donateur=="") print ("<div class=\"blanc\"><br/><br/><strong>Vous n'avez pas indiqué votre nom ?<br/><br/>Cliquez sur précédent dans votre navigateur, ou sur le bouton, ci-dessous, pour revenir sur la page de liste de naissance</strong><br/><br/><a href=\"liste.php\"><img align=\"center\" src=\"http://www.alicia/images/bouton_orange.gif\"></a></font></div>"); } else { //connection à la base de données $bd=connect_bd(); if($bd<>0) { //insertion des données $selectcadeau = "UPDATE alicia SET quantite=1, nom='$donateur', mail='$mail', date_enregistrement='$date_enregistrement' WHERE cadeau= '$quantite'"; $trans_cadeau = mysql_query($selectcadeau,$bd); // Requête SQL if((!$trans_cadeau)) { die('impossible d\'exécuter la requete :'.mysql_error()); } else { echo "<div class=\"blanc\"><br /><br /><br /><strong>Nous avons enregistré votre choix.<br /><br /> Si vous avez renseigné une adresse email, vous allez recevoir un message de confirmation à l’adresse communiquée ".$mail.".<br />"; echo "<br />Pour revenir sur la page d'accueil du site d'Alicia, <a href=\"http://www.alicia\">cliquez ici</a><br /><br /><br />A bientôt<br /><br /><br /></font></div>"; mail($mail, $sujet1, $html1, $header); mail('souricette@alicia.com', $sujet, $html, $header); } } deconnect_bd($bd); } } else { echo '<div>Echec de l’enregistrement, désolé</div>'; require("liste.php"); } ?>
Merci encore, à vous lire
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
3 juin 2013 à 15:07
3 juin 2013 à 15:07
La structure que je t'ai donné plus haut est correct, dans le sens algorithmique. Le problème vient donc du formulaire en amont et des données envoyées qui doivent être mal interprétées en php.
Peux tu remetre le code html de ton formulaire stp ? :)
Peux tu remetre le code html de ton formulaire stp ? :)
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
3 juin 2013 à 15:25
3 juin 2013 à 15:25
Tout d'abord, merci de ton suivi : voici le code de mon formulaire :
A te lire
Merci encore
<form name="liste" method="post" action="reservation_liste.php"> <table class="bordure" > <tr> <td width="30%"> </td> <td width="10%"> </td> <td colspan="2" width="40%"> <br/><br/><br/> Inscrivez votre nom, ci-dessous, pour éviter les cadeaux doublons : </td> </tr> <!-- verification des cadeaux présents et sélectionés dans la BDD --> <?php $bd=connect_bd(); if($bd<>0) $query = "SELECT photo, quantite, cadeau, nom FROM alicia"; $trouve = mysql_query($query); //On classe les réponses dans un tableau. while ($donnees = mysql_fetch_array($trouve)) { $lien = $donnees["photo"]; ?> <!-- fin de verification des cadeaux présents et sélectionnés dans la BDD --> <tr> <td> <?php print ("<img src=\"$lien\" width=\"200\" height=\"200\" align=\"right\"/>"); ?> </td> <td width="10%" align="center"> <?php if (($donnees["quantite"])==0) echo "<input name=\"quantite\" type=\"checkbox\" value=\"".$donnees["cadeau"]."\"/>"; else echo ""; ?> </td> <td width="30%"> <?php echo $donnees["cadeau"];?> </td> <td width="30%"> <?php if (empty($donnees['nom'])) echo "<input name=\"donateur[]\" type=\"text\" />"; else echo $donnees['nom']; ?> </td> </tr> <?php } mysql_close(); ?> <!-- fin de liste de choix de cadeaux-->
A te lire
Merci encore
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
3 juin 2013 à 15:30
3 juin 2013 à 15:30
Je reste persuadé que c'est le : donateur[]
Cela déclare un tableau, pourquoi veux tu mettre un tableau ? Tu veux juste récupéré un nom c'est tout
Cela déclare un tableau, pourquoi veux tu mettre un tableau ? Tu veux juste récupéré un nom c'est tout
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
3 juin 2013 à 15:45
3 juin 2013 à 15:45
C'est un tableau parce que le champ est reproduit plusieurs fois (autant de fois que de cadeau).
De plus, c'est a l'interieur de ce tableau (via un foreach) que je récupére le nom du donateur mais je ne parviens pas à l'isoler pour le transmettre a la base sql.
une autre idee ?
De plus, c'est a l'interieur de ce tableau (via un foreach) que je récupére le nom du donateur mais je ne parviens pas à l'isoler pour le transmettre a la base sql.
une autre idee ?
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
3 juin 2013 à 16:00
3 juin 2013 à 16:00
Mais c'est normal, je pense que tu comprends pas la logique, ou alors moi qui n'est pas compris ce que tu souhaites faire.
Alors pour moi tu cherches à faire une liste de cadeau que les gens peuvent prendre en charge.
Donc par exemple ton tableau se présente comme ceci :
Photo | quantité | personne
C'est comme ca que tu déclare ton tableau, et enfaite je viens de voir que le rempli comme ca :
Photo | quantité | cadeau | personne
Alors petit problème à ce niveau la
Enfaite j'ai du mal à comprendre ton systeme ... Surtout à ce niveau la :
Alors si tu pouvais m'expliquer CE QUE TU VEUX FAIRE, et non ce que tu fais dans le code :)
Alors pour moi tu cherches à faire une liste de cadeau que les gens peuvent prendre en charge.
Donc par exemple ton tableau se présente comme ceci :
Photo | quantité | personne
C'est comme ca que tu déclare ton tableau, et enfaite je viens de voir que le rempli comme ca :
Photo | quantité | cadeau | personne
Alors petit problème à ce niveau la
Enfaite j'ai du mal à comprendre ton systeme ... Surtout à ce niveau la :
<?php if (($donnees["quantite"])==0) echo "<input name=\"quantite\" type=\"checkbox\" value=\"".$donnees["cadeau"]."\"/>"; else echo ""; ?> </td> <td width="30%"> <?php echo $donnees["cadeau"];?> </td> <td width="30%"> <?php if (empty($donnees['nom'])) echo "<input name=\"donateur[]\" type=\"text\" />"; else echo $donnees['nom']; ?> </td> </tr> <?php
Alors si tu pouvais m'expliquer CE QUE TU VEUX FAIRE, et non ce que tu fais dans le code :)
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
3 juin 2013 à 16:21
3 juin 2013 à 16:21
Je mettre à jour la base sql qui répertorie les cadeaux et le nom des personnes qui les ont sélectionnés.
la ligne de code :
correspond la checkbox qui apparait ou pas selon qu'elle soit renseignée à 0 ou à 1 (boolean) ; O = lacheckbox s'affiche et reprend le nom du cadeau si celui-ci est sélectionné ; 1 = la checkbox ne s'affiche pas.
Mon problème porte sur le champ donateur qui ne met pas à jour la colonne :"nom" dans la base SQL ou plutot qui indique Array et non pas le nom indiqué.
J'espère avoir été claire.
la ligne de code :
<?php if (($donnees["quantite"])==0) echo "<input name=\"quantite\" type=\"checkbox\" value=\"".$donnees["cadeau"]."\"/>"; else echo ""; ?>
correspond la checkbox qui apparait ou pas selon qu'elle soit renseignée à 0 ou à 1 (boolean) ; O = lacheckbox s'affiche et reprend le nom du cadeau si celui-ci est sélectionné ; 1 = la checkbox ne s'affiche pas.
Mon problème porte sur le champ donateur qui ne met pas à jour la colonne :"nom" dans la base SQL ou plutot qui indique Array et non pas le nom indiqué.
J'espère avoir été claire.
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
3 juin 2013 à 16:37
3 juin 2013 à 16:37
Si tu met donateur[], tu répupères $_POST['donateur'] en tableau, tu en es consiente ? Donc pour récupérer les valeurs il faut faire un foreach dessus.
Tu ne peux pas faire :
$donateur=$_POST['donateur'];
UPDATE from ... set donateur = $donateur
Tu ne peux pas faire :
$donateur=$_POST['donateur'];
UPDATE from ... set donateur = $donateur
souricette04
Messages postés
12
Date d'inscription
jeudi 30 mai 2013
Statut
Membre
Dernière intervention
3 juin 2013
1
3 juin 2013 à 16:47
3 juin 2013 à 16:47
OK mais comment faire le foreach et récupérer la valeur pour faire l'update ???
J'ai déjà essayé le foreach à plusieurs endroit mais finalement, je ne sais où le placer ni comment récupérer la valeur pour qu'elle soit transmise au moment de l'update.
elle n'apparait que dans le code :
puis elle est détruite et l'update ne se fait pas si je fais :
c'est précisemment là mon problème.
J'ai déjà essayé le foreach à plusieurs endroit mais finalement, je ne sais où le placer ni comment récupérer la valeur pour qu'elle soit transmise au moment de l'update.
elle n'apparait que dans le code :
foreach ($donateur as $valeur) { echo svaleur }
puis elle est détruite et l'update ne se fait pas si je fais :
UPDATE from ... nom='$valeur'
c'est précisemment là mon problème.
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
3 juin 2013 à 16:51
3 juin 2013 à 16:51
OK mais comment faire le foreach et récupérer la valeur pour faire l'update ???
Je croyais que donateur avait plusieurs valeur ? D'ou le donateur[] donc plusieurs input pour le même cadeau.
SI tu as un input pour un cadeau, donateur tout court et $_POST['donateur'] aura UNE valeur. Donc la ton update ira très bien.
SI tu as plusieurs input pour un cadeau, alros donateur[] et donc tu récupères $_POST['donateur'] sur le quel tu fais un foreach pour avoir toutes les valeurs. Mais dans ce cas la, ton update sera plus compliqué car ta structure de table actuelle ne le permet pas
Je croyais que donateur avait plusieurs valeur ? D'ou le donateur[] donc plusieurs input pour le même cadeau.
SI tu as un input pour un cadeau, donateur tout court et $_POST['donateur'] aura UNE valeur. Donc la ton update ira très bien.
SI tu as plusieurs input pour un cadeau, alros donateur[] et donc tu récupères $_POST['donateur'] sur le quel tu fais un foreach pour avoir toutes les valeurs. Mais dans ce cas la, ton update sera plus compliqué car ta structure de table actuelle ne le permet pas