Problème de script d'inscription

Résolu
Bonjour,

J'ai mon script d'inscription (coté php), quand j'envoie mon formulaire à traité, la récupération des POST ne marche pas. Que mes champs de mon formulaire soit vide ou pas. Les POSTS ne marche pas.

Voici mon formulaire HTML:

<legend><h3>Fiche du joueur:</h3></legend>
<form action="inscription.php?title=Inscription" method="post">
<p><div>Pseudo:</div><input type="text" name="pseudo" placeholder="Ex: Datiar" maxlength="64" /><br /></p>
<p><div>Mot de passe:</div><input type="password" name="motdepasse" placeholder="Ex: mot de passe" maxlength="64" /><br /></p>
<p><div>Adresse mail:</div><input type="text" name="adressemail" placeholder="Ex: mail@gmail.com" maxlength="128" /></p>
<input type="submit" value="valider" />
</form>

Et mon script php:

<?php
include ("traitement/fonction.php");
include ("traitement/mail.php");

if(isset($_POST['login']) and isset($_POST['password']) and isset($_POST['email']))
{
$login=$_POST['pseudo'];//récupération des données du formulaire
$password=$_POST['motdepasse'];
$email=$_POST['adressemail'];
VerifierLogin ($login);
VerifierMdp ($password);
VerifierEmail ($email);
if((empty($login)) and (empty($password)) and (empty($email)))
{
echo '<link rel="stylesheet" href="traitement/tout.css">';
echo '<p>Veuillez remplire le formulaire.</p></ br></ br>
<legend><h3>Fiche du joueur:</h3></legend>
<form action="inscription.php?title=Inscription" method="post">
<p><div>Pseudo:</div><input type="text" name="pseudo" placeholder="Ex: Datiar" maxlength="64" /><br /></p>
<p><div>Mot de passe:</div><input type="password" name="motdepasse" placeholder="Ex: mot de passe" maxlength="64" /><br /></p>
<p><div>Adresse mail:</div><input type="text" name="adressemail" placeholder="Ex: mail@gmail.com" maxlength="128" /></p>
<input type="submit" value="valider" />
</form>';
}
elseif((VerifierLogin ($login)==false) or (VerifierMdp ($password)==false) or (VerifierEmail ($email)==false))
{
Login ($login);
Mdp ($password);
Email ($email);
echo '<p>Veuillez remplire le ou les champs vides.</p></ br></ br>
<legend><h3>Fiche du joueur:</h3></legend>
<form action="inscription.php?title=Inscription" method="post">
<p><div>Pseudo:</div><input type="text" name="pseudo" placeholder="Ex: Datiar" maxlength="64" /><br /></p>
<p><div>Mot de passe:</div><input type="password" name="motdepasse" placeholder="Ex: mot de passe" maxlength="64" /><br /></p>
<p><div>Adresse mail:</div><input type="text" name="adressemail" placeholder="Ex: mail@gmail.com" maxlength="128" /></p>
<input type="submit" value="valider" />
</form>';
}
elseif((VerifierLogin ($login)==true) and (VerifierMdp ($password)==true) and (VerifierEmail ($email)==true))
{
define('PREFIXE_SHA1', 'p8%B;Qdf78');
$mdp = $_POST['motdepasse'];
$crypter = sha1(PREFIXE_SHA1.$mdp);
$requete = "INSERT INTO membre (login, password, email, credat) VALUES ('$login','$crypter', '$email',NOW())";//on insére les données dans la basse MySQL
$result = mysql_query($requete);
if (!$result)
{
echo 'L\'enregistrement de vos données ont échoué. Essayez plus tard.';
}
else
{
echo 'L\'enregistrement de vos données ont réussie. Bienvenue.';
EnvoieMail($email);
}
}
else
{
echo 'Veuillez réessayer plus tard !';
}
}
else
{
echo 'Ca ne marche pas !';
}
?>

4 réponses

  1. Bonsoir,

    Dans ta condition $_POST['login'] n'existe pas car dans le formulaire il y a un champ nommé pseudo et non pas login donc la condition n'est pas remplie et le script PHP poursuit au elseif ou else suivant.
    Cordialement.
    1. ok, j'avais pas vu, je change ca, et je regarde si ca marche
      1. c'est bon, le problème, est réglé, maintenant, j'ai un autre problème, mais, qui a mon avis, viens de mes functions