Petit probleme avec MySQL

netila
Invité n'ayant pas de compte PHPfrance

12 mars 2005, 19:59

je n'ai vu aucun message d'erreur du moins...
Mais ce que je trouve bizzard c'est que j'ai essayer de réutiliser la variable $prenom

Code : Tout sélectionner

echo "bonjour $prenom !!!!!";
Mais j'ai un satané message d'erreur qui arrive ... :

Notice: Undefined variable: prenom in c:\program files\easyphp1-8\www\ilsa world\inscription_p2.php on line 12

je ne comprend vraiment pas... Apres avoir entré les donnés dans la DB, je devrais pouvoir les reutiliser non ??
Peut etre je ne comprend pas parseque je ne me suis pas encore assez avancé dans mon bouquin ;-) lol
Ou peut etre que je suis maudit par le dieux du PHP ... ;-)

Mammouth du PHP | 1885 Messages

12 mars 2005, 20:08

La question a déjà été abordée dans la FAQ du forum: Undefined variable

;)
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

netila
Invité n'ayant pas de compte PHPfrance

14 mars 2005, 09:12

oki ! merci beaucoup !

netila
Invité n'ayant pas de compte PHPfrance

14 mars 2005, 21:20

Mais vu que la variable est utilisé dans la meme page qu'ou elle est declarée il n'y devrais pas avoir ce pb non ??

En fait j'aimerais utilisé les donnés entrés dans le formulaire pour, par exemple, saluer la persone inscrite !

J'ai l'impresion que la technique que j'ai utiliser ne marche pas vraiment, ellene donne pas de message d'erreur, certe, mais logiquement, je devrais pouvoir utiliser la variable "$prenom" non ??

PhP... SI simple et compliqué a la fois, moi je trouve ça poetique !! LLool

Mammouth du PHP | 859 Messages

14 mars 2005, 22:01

Si register_globals est à OFF, la façon de récupérer une variable envoyée par un formulaire se fait avec $_POST['variable'] et si la variable provient de l'url (passage de paramètres) alors c'est $_GET['variable']

C'est une habitude à prendre tout simplement ;)

netila
Invité n'ayant pas de compte PHPfrance

15 mars 2005, 19:39

Merci beaucoup Flitox, et tout ce qui m'aide, mais je ne comprend pas une chose :
j'ai fait phpinfo(); et REGISTER_GLOBAL est a OFF, jusque la, pas de probleme.
Donc pour ajouter les donnés d'un formulaire a la DB, comme tu la dit flitox, j'utilise $_POST :

Code : Tout sélectionner

$sql = "INSERT INTO membres(prenom, email, code_postal) VALUES(".$_POST['prenom'].", ".$_POST['email'].", ".$_POST['code_postal'].")";
Pour l'instant pas de message d'erreur, je suis sur la 1er page du formulaire, je remplis les champs de texte, j'appuie sur le bouton, et j'arrive a la page 2 du formulaire qui ajoute les donnés de la page1 dans la DB.
Toujour pas de probleme !! Alors moi je pense que tout vas pour le mieux (dans le meilleur des mondes... hihi) ! Mais quand je veut utiliser la variable "$prenom" qui contient normalent le prenom du l'utilisateur, HOP :

Code : Tout sélectionner

Notice: Undefined variable: prenom in c:\program files\easyphp1-8\www\ilsa world\inscription_p2.php on line 12
La ligne 12 correspondant, comme vous pourriez vous en douter a :

echo "$prenom";

alors je ne comprend pas...
Le message d'erreur fait comme si je n'avait pas declarer la variable '$prenom'
Alors qu'elle contient 'normalement' les donnés d'une partie du formulaire !
et surtout que j'ai recupere la variable envoyer par le formulaire avec $_POST quelques ligne au dessus !!

Xenon_54 me dit que la question a deja été abordée dans la FAQ du forum, merci beaucoup de m'aider xenon, mais je ne pense pas que ce que tu ma donné ai rapport avec mon pb (enfin je pense !)

C'est vraiment bizzard non ?

Mammouth du PHP | 1885 Messages

15 mars 2005, 19:43

Je peux voir la ligne où tu déclares la variable $prenom?
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

netila
Invité n'ayant pas de compte PHPfrance

15 mars 2005, 19:57

La variable prenom est un variable envoyer par le formulaire non ?
(ne prend pas mal ce que je t'ai dit, que je pense que ca n'avait pas de rapport, ce n'est vraiment pas pour etre mechant ! mais je nage dans un flon artistique absolu...)

;-)

Mammouth du PHP | 1885 Messages

15 mars 2005, 20:27

Si tu dis toi-même que register_globals est à OFF et que tu as lu l'article de la FAQ, alors pourquoi est-ce que tu n'utilises pas $_POST['prenom'] ?
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

netila
Invité n'ayant pas de compte PHPfrance

15 mars 2005, 21:42

Code : Tout sélectionner

$dbname = 'clubdb'; $hostname = 'localhost'; $username = 'root'; $password = ''; $id_link = mysql_connect($hostname,$username,$password) or die("Impossible de se connecter"); mysql_connect($hostname,$username,$password) or die("Impossible de se connecter"); mysql_select_db("$dbname") or die("Impossible de se connecter à la base de données"); echo 'connexion etablie avec succes<BR>'; /////////////////////////////////////////////////// $prenom = $_POST['prenom']; $email = $_POST['email']; $code_postal = $_POST['code_postal']; ////////////////////////////////////////////////// $sql = "INSERT INTO membres(prenom, email, code_postal) VALUES('$prenom', '$email', '$code_postal')"; mysql_db_query($dbname,$sql,$id_link);
Tu veut dire comme ceci ?

Mammouth du PHP | 1885 Messages

15 mars 2005, 21:52

J'ai de la difficulté à cerner le problème. Est-ce un problème au niveau de ta requête SQL qui ne s'exécute pas ou bien tu désires récupérer la valeur transmise dans d'autres opérations?

Je veux dire, je n'arrive pas à cerner exactement le problème et le résultat attendu.
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Mammouth du PHP | 859 Messages

15 mars 2005, 21:58

Je pense que le problème vient du passage de la variable "prénom" sur 2 pages, d'abord celle du résultat après avoir valider le formulaire puis une autre. Un peu comme si le but était de conserver la variable "prénom" de page en page comme avec les sessions.

Je crois que c'est ça mais je me trompe peut-être.

J'avoue que depuis le début je finis par me demander si on se penche sur le véritable problème. Seul Netila peut nous le dire...

netila
Invité n'ayant pas de compte PHPfrance

15 mars 2005, 22:11

Mais flitox, meme si je fait passer ma variable prenom de page en page avec $_POST, je devrais pouvoir l'utiliser ??
Pourquoi ce message d'erreur comme si elle n'etait pas declarée?
Et surtout, vus que je l'ai entré dans la DB, je devrai pouvoir l'utiliser sans probleme non ?

et il posible de traiter le formulaire dans la page meme ? d'entré les valeur ds la DB et tt et tt ?
Si oui, comment ?


Tant de question qui gissent au milieu de mon crane, va faloir que je prène un aspegik'

Mammouth du PHP | 859 Messages

15 mars 2005, 22:15

Explique nous le schéma que tu suis depuis ton formulaire jusqu'à la fin :

exemple : formulaire --> inscription --> traitement --> blabla

Je pense qu'après ça on devrait mieux saisir le problème parce que le code sur lequel on se penche depuis le début ne semble pas avoir de problème.
Mais flitox, meme si je fait passer ma variable prenom de page en page avec $_POST, je devrais pouvoir l'utiliser ??
Comment veux tu faire passer de page en page une variable avec $_POST puisqu'elle correspond à la méthode de récupération de variables postées dans un formulaire? à moins que sur chaque page il y ait un formulaire avec un input qui récupère la variable prénom à chaque fois mais honnêtement je doute qu'en terme d'optimisation ce soit le top ;)

netila
Invité n'ayant pas de compte PHPfrance

15 mars 2005, 22:21

lol je confond un peut tout ! lol ! cela fait que quelques jour que j'ai commencer le PHP lol

Mais, est il possible de traiter les donnés d'un formulaire dans la meme page que ce dernier ?
Car l'erreur, on dirait, vient de la transmision des variables du formulaire page1 au formulairepage 2

a pres tout, que je traite les informations dans une autre page, ou dans la meme page, c'est la meme choses non ? Si ca peut m'eviter des erreurs !