Problème de configuration code

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème de configuration code

Re: Problème de configuration code

par rebel29270 » 12 août 2011, 22:35

ton lien de test ne fonctionne pas ...

Problème de configuration code

par maxime73 » 11 août 2011, 21:05

Bonjour je suis en train de faire un code qui permet de s'inscrire a l'espace membres de mon site .

Le premier if permet de charger le formulaire (il marche)
le premier elseif permet que si l'utilisateur a des variables de sessions (=connecté ) qu'on lui dise qu'il est déja inscrit (je ne l'ai pas encore testée, mais je pense qu'il marche)
le deuxieme elseif (qui permet de s'inscrire, si toutes les conditions sont bonnes )
c'est a dire:
-les deux mots de passe sont égales
-si le pseudo n'est pas déja utilisée
-si l'adresse e-mail a une forme correcte
- si le pseudo n'est pas vide
Il marche

En revanche lorsque l'utilisateur fait une faute , par exemple : il ecrit une adresse e-mail non valide . Le else ne veut pas se charger. Ca m'affiche une page blanche .

Vous pouvez tester le fonctionnement du script ici.

Merci d'avance
Voici le code:
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>poliboolold.fr</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   </head>
   <body>

<?php

try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
   			 $bdd = new PDO('mysql:host=********;dbname=polib250634', 'polib250634', '****', $pdo_options);
	if(!isset( $_POST['pseudo'])AND !isset( $_POST['mdp']) AND !isset( $_POST['mdpdouble']) AND !isset( $_POST['email']))
	{
		if(!isset( $_SESSION['id']) AND !isset( $_SESSION['pseudo']))
		{
			?>
			<form method="post" action="membres_inscription.php">
			
			<p>
			Pseudo <input type="text" name="pseudo"/>
			mdp <input type="password" name="mdp"/>
			mdpdouble <input type="password" name="mdpdouble"/>
			email <input type="text" name="email"/>
			<input type="submit" value="Valider" />

<?php
		}
	}
	
	elseif(isset ($_SESSION['id']) AND isset($_SESSION['pseudo']))
	{
		echo"connecté";
	}

	elseif($_POST['mdp']== $_POST['mdpdouble'])
	{
		   $pass_hacher = sha1($_POST['mdp']);
 
		$req= $bdd->prepare('SELECT id FROM membres WHERE pseudo=:pseudo AND pass=:pass');
		$req->execute(array('pseudo'=> $_POST['pseudo'],'pass'=> $pass_hacher));
		$resultat= $req->fetch();
					
			if(!$resultat)
{
		if(preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['email']))
		{

                     if(!empty($_POST['pseudo']))
{
$pass_hache = sha1($_POST['mdp']);
			$requete = $bdd->prepare('INSERT INTO membres(pseudo, pass, email, date_inscription) VALUES(:pseudo, :pass, :email, CURDATE())');
			$requete->execute(array('pseudo'=> $_POST['pseudo'], 'pass'=> $pass_hache, 'email'=> $_POST['email']));
			echo"Inscrit";
			$requete->closeCursor();

}
}
}
}
		else
		{
echo"recommencez";
		}
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>

   </body>
</html>