Pb pour inserer une variable dans une bdd
Mickel
-
Mickel -
Mickel -
Bonjour,
j'apprends le PHP depuis TRES peu et j'ai encore de grosse lacune donc je m'excuse d'avances si le probème que je vais citer est de très faible niveau :P
Voila je cherche a créé un formulaire et je souhaiterai insérer dans ma base donnée la date de naissance a l'aide des 3 champs du formulaire jour mois année. Mais il doit i avoir un problème dans mon code car rien ne s'affiche dans ma base de donnée dans le champs [ DDN ] lorsqu'on rempli le formulaire. les autres champs s'affichent très bien dans la bdd
Voici la commande de mon insertion :
'INSERT INTO XXXX VALUES("", "'.mysql_escape_string($_POST['pseudo']).'" , "'.mysql_escape_string($_POST['jour']).'" , "'.$ddn.'" , "'.mysql_escape_string($_POST['annee']).'" , "'.$ddn.'" , "'.md5(mysql_escape_string($_POST['mdp'])).'")';
Et cela, ce que j'essais d'afficher pour le champs ddn (date de naissance)
$ddn=$_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'] ;
sachant que les variable jour mois année sont issues de <select></select> et qu'elles s'affichent très bien dans ma bdd si je crée un champ pour chacun des 3 variables.
Merci beaucoup de votre aide.
j'apprends le PHP depuis TRES peu et j'ai encore de grosse lacune donc je m'excuse d'avances si le probème que je vais citer est de très faible niveau :P
Voila je cherche a créé un formulaire et je souhaiterai insérer dans ma base donnée la date de naissance a l'aide des 3 champs du formulaire jour mois année. Mais il doit i avoir un problème dans mon code car rien ne s'affiche dans ma base de donnée dans le champs [ DDN ] lorsqu'on rempli le formulaire. les autres champs s'affichent très bien dans la bdd
Voici la commande de mon insertion :
'INSERT INTO XXXX VALUES("", "'.mysql_escape_string($_POST['pseudo']).'" , "'.mysql_escape_string($_POST['jour']).'" , "'.$ddn.'" , "'.mysql_escape_string($_POST['annee']).'" , "'.$ddn.'" , "'.md5(mysql_escape_string($_POST['mdp'])).'")';
Et cela, ce que j'essais d'afficher pour le champs ddn (date de naissance)
$ddn=$_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'] ;
sachant que les variable jour mois année sont issues de <select></select> et qu'elles s'affichent très bien dans ma bdd si je crée un champ pour chacun des 3 variables.
Merci beaucoup de votre aide.
A voir également:
- Pb pour inserer une variable dans une bdd
- Insérer une vidéo dans powerpoint - Guide
- Insérer une signature sur word - Guide
- Insérer une liste déroulante excel - Guide
- Insérer une légende word - Guide
- Comment insérer une table des matières dans word - Guide
1 réponse
Salut,
première chose, vérifie que les valeurs que tu veux enregistrer sont bien envoyées par le formulaire
pour cela tu mets provisoirement au début de ton script d'enr dans la bdd:
tu vas voir un array de tous tes champs
par ex [annee]=>1940
etc..
et est ce normal que tu ait deux fois le champ 'annee' ?
et as tu vérifié que tu as autant de champs dans ta BDD que tous ceux que tu veux enregistrer (tu as deux fois $ddn ?)
@lain
première chose, vérifie que les valeurs que tu veux enregistrer sont bien envoyées par le formulaire
pour cela tu mets provisoirement au début de ton script d'enr dans la bdd:
echo "<pre>"; print_r($_POST); echo "</pre>";
tu vas voir un array de tous tes champs
par ex [annee]=>1940
etc..
et est ce normal que tu ait deux fois le champ 'annee' ?
et as tu vérifié que tu as autant de champs dans ta BDD que tous ceux que tu veux enregistrer (tu as deux fois $ddn ?)
@lain
echo "<pre>";
print_r($_POST);
echo "</pre>";
et ça m'affiche un array vide. :( .
En vérité il n'y as pas 2 fois $ddn c juste une erreur quand j'ai copié collé. Voila la ligne exacte.
'INSERT INTO XXXX VALUES("", "'.mysql_escape_string($_POST['pseudo']).'" , "'.mysql_escape_string($_POST['jour']).'" , "'.$_POST['mois'].'" , "'.mysql_escape_string($_POST['annee']).'" , "'.$ddn.'" , "'.md5(mysql_escape_string($_POST['mdp'])).'")';
Toutes les données rentré via le formulaire s'insèrent sans probème dans la base de donnée sauf la variable $ddn qui ne fait pas partie du formulaire mais dont je veux insérer en même temps.
Oui il y a bien autan de champs dans ma bdd que de donnée que je veux enregistrer
as tu bien mis
$ddn=$_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'] ;
avant ta commande INSERT INTO
pour verifier que tu as bien qq chose mets des echo:
APRES le INSERT.
C'est tout bête mais j'y faisait pas attention et je me tirais les cheveux parce que je voyais vraiment pas d'ou ça pouvait venir. Merci beaucoup. :D