je m'exerce à partir d'un tuto afin d'apprendre à créer un formulaire d'inscription, je l'ai fini et j'ai voulu recommencer mais sans utiliser le tutoriel afin de voir si j'avais bien compris les différentes fonctions etc.. Ma page inscription touche à sa fin, je me suis précipité sur l'inscription et je sais que dans le code il manque de conditions mais ce n'est pas trop un soucis, là mon problème est que quand je fini de taper le pseudo, mdp et mail je reçois bien le message de confirmation mais le soucis est que quand je rafraîchi ma page de BDD l'utilisateur ajouter n'apparaît pas..
Je n'arrive pas à comprendre d'où vient le problème, j'ai d'ouvert et mon fichier PHP du tuto que j'avais suivis et qui fonctionner à merveille, et mon second PHP ouvert en parallèle afin de voir d'où est le problème mais je ne trouve pas.. Je vous laisse mon code :
<?php
$bdd = new PDO('mysql:host=127.0.0.1;dbname=inscription_form;charset=utf8', 'root', '');
if (isset($_POST['forminscription']))
{
$pseudo = htmlspecialchars($_POST['pseudo']);
$email = htmlspecialchars($_POST['email']);
$email2 = htmlspecialchars($_POST['email2']);
$password = sha1($_POST['password']);
$password2 = sha1($_POST['password2']);
if(!empty($_POST['pseudo']) AND !empty($_POST['email']) AND !empty($_POST['email2']) AND !empty($_POST['password']) AND !empty($_POST['password2']))
{
$longpseudo = strlen($pseudo);
if($longpseudo <= 30)
{
$reqpseudo = $bdd->prepare("SELECT * FROM members WHERE pseudo = ? ");
$reqpseudo->execute(array($pseudo));
$pseudoexist = $reqpseudo->rowCount();
if($pseudoexist == 0)
{
if ($email == $email2)
{
if(filter_var($email, FILTER_VALIDATE_EMAIL))
{
$reqemail = $bdd->prepare("SELECT * FROM members WHERE email = ? ");
$reqemail->execute(array($pseudo));
$pseudoexist = $reqemail->rowCount();
if($pseudoexist == 0)
{
if($password == $password2)
{
$insertmbr = $bdd->prepare("INSERT INTO members(pseudo, email, password) VALUES(?,?,?)");
$insertmbr->execute(array($pseudo, $email, $password));
$valide = "Votre compte a bien était créer !";
}
}
else
{
$erreur = "Votre Email est déjà utiliser";
}
}
else
{
$erreur = "Votre mail n'est pas valide";
}
}
else
{
$erreur = "Vos emails ne sont pas identiques!";
}
}
}
else
{
$erreur = "Votre pseudo doit contenir 30 caracteres maximum !";
}
}
}
?>
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>MA SUPER PAGE</title>
</head>
<body>
<div align="center">
<table>
<form method="post" action="">
<tr>
<td align="right">
<label for="pseudo">Pseudo :</label>
<input type="text" name="pseudo" id="pseudo" value="<?php if(isset($pseudo)) { echo $pseudo; } ?>"/>
</td>
</tr>
<br /><br />
<tr>
<td align="right">
<label for="password">Mot de passe :</label>
<input type="password" name="password" id="password" value=""/>
</td>
</tr>
<tr>
<td align="right">
<label for="password2">Confirmez mot de passe :</label>
<input type="password" name="password2" id="password2" value=""/>
</td>
</tr>
<tr>
<td align="right">
<label for="email">Votre email :</label>
<input type="email" name="email" id="email" value="<?php if(isset($email)) { echo $email; } ?>"/>
</td>
</tr>
<tr>
<td align="right">
<label for="email2">Confirmez votre email :</label>
<input type="email" name="email2" id="email2" value="<?php if(isset($email2)) { echo $email2; } ?>"/>
</td>
</tr>
<tr>
<td align="center">
<br />
<input type="submit" name="forminscription" value="Je m'inscris" />
</td>
</tr>
</table>
</p>
</form>
<?php
if(isset($erreur))
{
echo '<font color="red">'.$erreur.'</font>';
}
if(isset($valide))
{
echo '<font color="green">'.$valide.'</font>';
}
?>
</div>
</body>
</html>
J’espère que vous pourrais trouver le problème..
Ma BDD est déjà bien connecter, elle s'appel "inscription_form" et la table où doivent logiquement être ajouter les membres s'appel "members".
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.