PHP

Espace membre, base de données

Non Résolu

Bonjour, j'ai mon formulaire d'inscription mais les membres ne s'afiche pas dans bdd.

Pouvez-vous m'aidez ?

Please

Merci

Luca


Voici mon code :


<?php
$bdd = new PDO('mysql:host=localhost;dbname=espace_membre','root','');


if(isset($_POST['forminscription'])) 
{
	$pseudo = htmlspecialchars($_POST['pseudo']);
	$mail = htmlspecialchars($_POST['mail']);
	$mail2 = htmlspecialchars($_POST['mail2']);
	$mdp = sha1($_POST['mdp']);
	$mdp2 = sha1($_POST['mdp2']);


	if (!empty($_POST['pseudo']) AND !empty($_POST['mail']) AND !empty($_POST['mail2']) AND !empty($_POST['mdp']) AND !empty($_POST['mdp2']))
	{
		$pseudolenght = strlen($pseudo);
		if ($pseudolenght > 255) 
		{//longueur ko
				$erreur = "Ton pseudo ne doit dépasser 255 caractères !";
		}
		else  
		{
			// longueur ok
			if ($mail == $mail2)
			{ 
				if(filter_var($mail, FILTER_VALIDATE_EMAIL)) {
					$reqmail = $bdd->prepare("SELECT * FROM membres WHERE mail = ?");
					$reqmail->execute(array($mail));
					$mailexist = $reqmail->rowCount();
					if($mailexist == 0) 
					{
						if($mdp == $mdp2) {
							$insertmbr = $bdd->prepare("INSERT INTO membres(pseudo, mail, motdepasse) VALUES(?, ?, ?)");
							$insertmbr->execute(array($pseudo, $mail, $mdp));
							$erreur = "Votre compte a bien été créé ! <a href=\"connexion.php\">Me connecter</a>";
				        } 
				        else {
				            $erreur = "Vos mots de passes ne correspondent pas !";
				        }
				    } 
				    else 
				    {
				        $erreur = "Adresse mail déjà utilisée !";
				    }
				            
				} else 
				{
				   $erreur = "Votre adresse mail n'est pas valide !";
				}
			}
			else
			{
				// pas mm mail
			}
		}
	}
	else
	{
			$erreur = "Tous les champs doivent être complétés !";
	}
}


?>
<!DOCTYPE html>
<html>
<head><title>Espace membres-Inscription</title>
	<meta charset="utf-8">
	<link rel="stylesheet" type="text/css" href="register.css">
		<link rel="stylesheet" href="register.css">
</head>
<body>
<style type="text/css">
td{
  display: flex;
  flex-direction: column;
</style>
<div align="center">
<H2>Inscription</H2>
<form method="POST" action=""><table>
<tr>
<td align="left">
<label for="pseudo">Pseudo :</label>
</td>
<td>
<input type="text" name="pseudo" placeholder="Ton pseudo" id="pseudo">
</td>
</tr>
<tr>
<td align="left">
<label for="mail">Mail :</label>
</td>
<td>
<input type="email" name="mail" placeholder="Ton mail" id="mail"></td>
</tr>
<tr>
<td align="left">
<label for="mail2">Confirmation de ton mail :</label>
</td><br/>
<td>
<input type="email" name="mail2" placeholder="Confirmes ton mail" id="mail2"></td>
</tr>
<tr>
<td align="left">
<label for="mdp">Mot de passe :</label>
</td>
<td>
<input type="password" name="mdp" placeholder="Ton mot de passe" id="mdp"></td>
</tr>
<tr>
<td align="left">
<label for="mdp2">Confirmation de ton mot de passe :</label>
</td>
<td>
<input type="password" name="mdp2" placeholder="Confirmes ton mdp" id="mdp2"></td>
</tr>
</form>
</div>
</table>
<br>
<input type="submit" value="Je m'incris" name="forminscription">
<?php
if (isset($erreur)) 
{
 echo '<font color="red">'.$erreur."</font>"; 
}




?>
</body>
</html><?php
$bdd = new PDO('mysql:host=localhost;dbname=espace_membre','root','');


if(isset($_POST['forminscription'])) 
{
	$pseudo = htmlspecialchars($_POST['pseudo']);
	$mail = htmlspecialchars($_POST['mail']);
	$mail2 = htmlspecialchars($_POST['mail2']);
	$mdp = sha1($_POST['mdp']);
	$mdp2 = sha1($_POST['mdp2']);


	if (!empty($_POST['pseudo']) AND !empty($_POST['mail']) AND !empty($_POST['mail2']) AND !empty($_POST['mdp']) AND !empty($_POST['mdp2']))
	{
		$pseudolenght = strlen($pseudo);
		if ($pseudolenght > 255) 
		{//longueur ko
				$erreur = "Ton pseudo ne doit dépasser 255 caractères !";
		}
		else  
		{
			// longueur ok
			if ($mail == $mail2)
			{ 
				if(filter_var($mail, FILTER_VALIDATE_EMAIL)) {
					$reqmail = $bdd->prepare("SELECT * FROM membres WHERE mail = ?");
					$reqmail->execute(array($mail));
					$mailexist = $reqmail->rowCount();
					if($mailexist == 0) 
					{
						if($mdp == $mdp2) {
							$insertmbr = $bdd->prepare("INSERT INTO membres(pseudo, mail, motdepasse) VALUES(?, ?, ?)");
							$insertmbr->execute(array($pseudo, $mail, $mdp));
							$erreur = "Votre compte a bien été créé ! <a href=\"connexion.php\">Me connecter</a>";
				        } 
				        else {
				            $erreur = "Vos mots de passes ne correspondent pas !";
				        }
				    } 
				    else 
				    {
				        $erreur = "Adresse mail déjà utilisée !";
				    }
				            
				} else 
				{
				   $erreur = "Votre adresse mail n'est pas valide !";
				}
			}
			else
			{
				// pas mm mail
			}
		}
	}
	else
	{
			$erreur = "Tous les champs doivent être complétés !";
	}
}


?>
<!DOCTYPE html>
<html>
<head><title>Espace membres-Inscription</title>
	<meta charset="utf-8">
	<link rel="stylesheet" type="text/css" href="register.css">
		<link rel="stylesheet" href="register.css">
</head>
<body>
<style type="text/css">
td{
  display: flex;
  flex-direction: column;
</style>
<div align="center">
<H2>Inscription</H2>
<form method="POST" action=""><table>
<tr>
<td align="left">
<label for="pseudo">Pseudo :</label>
</td>
<td>
<input type="text" name="pseudo" placeholder="Ton pseudo" id="pseudo">
</td>
</tr>
<tr>
<td align="left">
<label for="mail">Mail :</label>
</td>
<td>
<input type="email" name="mail" placeholder="Ton mail" id="mail"></td>
</tr>
<tr>
<td align="left">
<label for="mail2">Confirmation de ton mail :</label>
</td><br/>
<td>
<input type="email" name="mail2" placeholder="Confirmes ton mail" id="mail2"></td>
</tr>
<tr>
<td align="left">
<label for="mdp">Mot de passe :</label>
</td>
<td>
<input type="password" name="mdp" placeholder="Ton mot de passe" id="mdp"></td>
</tr>
<tr>
<td align="left">
<label for="mdp2">Confirmation de ton mot de passe :</label>
</td>
<td>
<input type="password" name="mdp2" placeholder="Confirmes ton mdp" id="mdp2"></td>
</tr>
</form>
</div>
</table>
<br>
<input type="submit" value="Je m'incris" name="forminscription">
<?php
if (isset($erreur)) 
{
 echo '<font color="red">'.$erreur."</font>"; 
}
?>
</body>
</html>


et ma base donné est composés d'un id,du pseudo,d'un mail et d'un mot de passe.🙏🙏🙏🙏🙏

642 vues
31 mars 2020 à 15:45 (Édité)
Cette pub permet au site de vivre ...

4 commentaires

Re:


As-tu suivis un tutoriel en particulier autre que celui de @Clouder ? 🤔

Non ni d'erreur et bonne connexion à la base

Hello


Est-ce que tu a des erreurs qui s'affichent ?

Hello @Luca-vidiri46,


Est-ce que la connexion à ta base de données s'effectue correctement ? 🤔

Vérifie les identifiants de connexion en consultant ce cours 😉

Cette pub permet au site de vivre ...