Formulaire en php
Résolu/Fermé
mornaloce
-
8 juil. 2009 à 22:11
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 - 9 juil. 2009 à 13:36
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 - 9 juil. 2009 à 13:36
A voir également:
- Formulaire en php
- Easy php - Télécharger - Divers Web & Internet
- Formulaire de réclamation facebook - Guide
- Formulaire de remboursement free pdf ✓ - Forum Vos droits sur internet
- Récupérer compte hotmail sans formulaire ✓ - Forum Hotmail / Outlook.com
- Convertir formulaire word en pdf modifiable gratuit ✓ - Forum PDF
10 réponses
Samaël666
Messages postés
73
Date d'inscription
mardi 29 juillet 2008
Statut
Membre
Dernière intervention
6 juin 2010
8
8 juil. 2009 à 22:15
8 juil. 2009 à 22:15
Vérifie de bien passer la variable EMail, tu as peut-être mal orthographié ta variable de l'autre côté du formulaire, ce qui fait qu'elle ne peut pas être transmise.
Tu as du mettre un name="" différent de name="EMail" j'imagine.
Cordialement, Samaël666.
Tu as du mettre un name="" différent de name="EMail" j'imagine.
Cordialement, Samaël666.
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
8 juil. 2009 à 22:15
8 juil. 2009 à 22:15
Bonsoir,
il semblerait que $_POST['Email'] ne soit pas initialisé.
il semblerait que $_POST['Email'] ne soit pas initialisé.
Bonsoir,
Tout d'abord merci de vos réponses si rapides. J'ai suivis les conseils et vérifié le code de mon autre page. J'avais effectivement un nom différent sur l'autre page qui était "mail". Je vous remercie et me permet de poser une autre question peut-être aussi stupide. Pour me connecter à mon site je dois renter une adresse mail et un mot de passe mais lorsque je rentre ces deux dernières informations ça me renvoie toujours "Vous avez oubliez de remplir un champ".
Voici mon code php:
<?php
$db = mysql_connect("localhost", "root", "");
mysql_select_db("test", $db);
if(isset($_POST) && !empty($_POST['EMail']) && !empty($_POST['Mot_De_Passe'])) {
extract($_POST);
// on recupère le password de la table qui correspond au login du visiteur
$sql = "select Mot_De_Passe from test where EMail='".$EMail."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
if($data['Mot_De_Passe'] != $pass) {
echo '<p>Mauvais E-Mail / password. Merci de recommencer</p>';
include('Log.html'); // On inclut le formulaire d'identification
exit;
}
else {
$_SESSION['EMail'] = $data['EMail'];
echo 'Vous etes bien logué';
// ici vous pouvez afficher un lien pour renvoyer
// vers la page d'accueil de votre espace membres
}
}
else {
echo '<p>Vous avez oublié de remplir un champ.</p>';
include('Log.html'); // On inclut le formulaire d'identification
exit;
}
mysql_close();
?>
Tout d'abord merci de vos réponses si rapides. J'ai suivis les conseils et vérifié le code de mon autre page. J'avais effectivement un nom différent sur l'autre page qui était "mail". Je vous remercie et me permet de poser une autre question peut-être aussi stupide. Pour me connecter à mon site je dois renter une adresse mail et un mot de passe mais lorsque je rentre ces deux dernières informations ça me renvoie toujours "Vous avez oubliez de remplir un champ".
Voici mon code php:
<?php
$db = mysql_connect("localhost", "root", "");
mysql_select_db("test", $db);
if(isset($_POST) && !empty($_POST['EMail']) && !empty($_POST['Mot_De_Passe'])) {
extract($_POST);
// on recupère le password de la table qui correspond au login du visiteur
$sql = "select Mot_De_Passe from test where EMail='".$EMail."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
if($data['Mot_De_Passe'] != $pass) {
echo '<p>Mauvais E-Mail / password. Merci de recommencer</p>';
include('Log.html'); // On inclut le formulaire d'identification
exit;
}
else {
$_SESSION['EMail'] = $data['EMail'];
echo 'Vous etes bien logué';
// ici vous pouvez afficher un lien pour renvoyer
// vers la page d'accueil de votre espace membres
}
}
else {
echo '<p>Vous avez oublié de remplir un champ.</p>';
include('Log.html'); // On inclut le formulaire d'identification
exit;
}
mysql_close();
?>
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
9 juil. 2009 à 10:32
9 juil. 2009 à 10:32
Bonjour afin de savoir exactement ce qui est passé et récupéré je mettrai pendant la phase de test
<?php
$db = mysql_connect("localhost", "root", "");
mysql_select_db("test", $db);
echo "<pre>";print_r($_POST);echo "</pre>";
if(isset($_POST) && !empty($_POST['EMail']) && !empty($_POST['Mot_De_Passe'])) {
extract($_POST);
<?php
$db = mysql_connect("localhost", "root", "");
mysql_select_db("test", $db);
echo "<pre>";print_r($_POST);echo "</pre>";
if(isset($_POST) && !empty($_POST['EMail']) && !empty($_POST['Mot_De_Passe'])) {
extract($_POST);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour giheller j'ai ajouté t'a ligne de code dans la page et voici ce que ça m'affiche:
Array
(
[Mail] => n
[pass] => m
)
Vous avez oublié de remplir un champ.
n et m sont comme tu l'aura surement compris les équivalents des informations que je rentre dans mon formulaire.
Array
(
[Mail] => n
[pass] => m
)
Vous avez oublié de remplir un champ.
n et m sont comme tu l'aura surement compris les équivalents des informations que je rentre dans mon formulaire.
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
9 juil. 2009 à 12:56
9 juil. 2009 à 12:56
cela saute donc au yeux puisque mot_de_passe s'appelle pass
En fait j'ai modifié le code et je sais dans quelle zone se trouve le problème même si je ne le connais pas pour autant. Mais il serait au niveau de :
else {
echo '<p>Vous avez oublié de remplir un champ.</p>';
include('Log.html'); // On inclut le formulaire d'identification
exit;
}
Car maintenant j'ai une nouvelle erreur qui est la même que sur mon premier problème:
Notice: Undefined index: EMail in C:\wamp\www\Site\traitement.php on line 24
Vous etes bien logué
En revanche comme je débute le php, et que le code que j'ai utilisé je l'ai juste copié puis modifié quelque peu, je ne comprend pas vraiment cette ligne et ne connais donc pas la cause du problème. J'ai vérifier que de l'autre coté de la page les noms concordais avec ceux de ce code ci mais il n'y a aucun problème à ce niveau.
else {
echo '<p>Vous avez oublié de remplir un champ.</p>';
include('Log.html'); // On inclut le formulaire d'identification
exit;
}
Car maintenant j'ai une nouvelle erreur qui est la même que sur mon premier problème:
Notice: Undefined index: EMail in C:\wamp\www\Site\traitement.php on line 24
Vous etes bien logué
En revanche comme je débute le php, et que le code que j'ai utilisé je l'ai juste copié puis modifié quelque peu, je ne comprend pas vraiment cette ligne et ne connais donc pas la cause du problème. J'ai vérifier que de l'autre coté de la page les noms concordais avec ceux de ce code ci mais il n'y a aucun problème à ce niveau.
mornaloce
Messages postés
47
Date d'inscription
lundi 17 mars 2008
Statut
Membre
Dernière intervention
21 mars 2014
2
9 juil. 2009 à 13:07
9 juil. 2009 à 13:07
Je me suis trompé de ligne de code désolé ^^
C'est :
else {
$_SESSION['EMail'] = $data['EMail'];
echo 'Vous etes bien logué';
// ici vous pouvez afficher un lien pour renvoyer
// vers la page d'accueil de votre espace membres
}
C'est :
else {
$_SESSION['EMail'] = $data['EMail'];
echo 'Vous etes bien logué';
// ici vous pouvez afficher un lien pour renvoyer
// vers la page d'accueil de votre espace membres
}
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
>
mornaloce
Messages postés
47
Date d'inscription
lundi 17 mars 2008
Statut
Membre
Dernière intervention
21 mars 2014
9 juil. 2009 à 13:17
9 juil. 2009 à 13:17
$data['Email'] n'existe pas
bon on fait un point
au submit d'un formulaire utilisé avec la méthode POST, le fichier exécutér (formulaire action=xxx.php xxx dans cet exemplel) reçoit les données du formulaire
elles sont passées dans un tableau nommé $_POST où chaue varable du tableau ont comme nom le "name" des input du formulaire
soit
si <input name="mail" value="">entrez Email
dans le xxx on récupaire Email dans la variable $_POST['mail']
revoir donc les noms dans les input
ce que l'on récupère et ensuite comment on les traite
bon on fait un point
au submit d'un formulaire utilisé avec la méthode POST, le fichier exécutér (formulaire action=xxx.php xxx dans cet exemplel) reçoit les données du formulaire
elles sont passées dans un tableau nommé $_POST où chaue varable du tableau ont comme nom le "name" des input du formulaire
soit
si <input name="mail" value="">entrez Email
dans le xxx on récupaire Email dans la variable $_POST['mail']
revoir donc les noms dans les input
ce que l'on récupère et ensuite comment on les traite
mornaloce
Messages postés
47
Date d'inscription
lundi 17 mars 2008
Statut
Membre
Dernière intervention
21 mars 2014
2
9 juil. 2009 à 13:31
9 juil. 2009 à 13:31
Ça y est j'ai trouvé le problème ! En fait je ne savais pas ce que signifiait "$_SESSION['Mail'] = $data['EMail']"
mais je viens de comprendre (j'ai le cerveau lent c'est pour ça ^^). J'ai donc changer "$data['EMail']" en "$Mail" et ça à marché !
Merci à ceux qui m'ont aidé c'est à dire: giheller et Samaël666.
mais je viens de comprendre (j'ai le cerveau lent c'est pour ça ^^). J'ai donc changer "$data['EMail']" en "$Mail" et ça à marché !
Merci à ceux qui m'ont aidé c'est à dire: giheller et Samaël666.
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
9 juil. 2009 à 13:36
9 juil. 2009 à 13:36
Bravo
bonne continuation
mets le pb en résolu si ce n'est déjà fait
bonne continuation
mets le pb en résolu si ce n'est déjà fait