PDO d'inscriptions mauvais codage ?
Posté : 22 nov. 2013, 15:45
bonjour voilà je viens vers vous pour une petite aide . mon formulaire d'inscription fonction super bien, le seul petit souci que j'ai c'est les champs nom, email et email2 devraient disparaitre une fois l'enregistrement effectué.
Mais ils se raient affiché avec les données entrées, comment le faire disparaitre stp?
voici le code
Mais ils se raient affiché avec les données entrées, comment le faire disparaitre stp?
voici le code
<?php
//On verifie que le formulaire a ete envoye
if(isset($_POST['nom'], $_POST['email'], $_POST['email_2'], $_POST['sexe']) and $_POST['nom']!='')
{
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$_POST['nom'] = stripslashes($_POST['nom']);
$_POST['email'] = stripslashes($_POST['email']);
$_POST['email_2'] = stripslashes($_POST['email_2']);
$_POST['sexe'] = stripslashes($_POST['sexe']);
$_SESSION['security_code'] = $_POST['security_code'];
}
if(!preg_match('/^[a-zA-Z]$/',$_POST['nom']))
{
//On verifie si l'email est valide
if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{
//On verifie si l'email_2 est valide
if(filter_var($_POST['email_2'], FILTER_VALIDATE_EMAIL))
{
//On verifie les deux email si elle dont égale
if($_POST['email'] == $_POST['email_2'])
{
// Controle du nom dans la basse de donnée
$reponse_nom = $connection->prepare('SELECT nom FROM comptes WHERE nom = :nom');
$reponse_nom->execute(array('nom'=> $_POST['nom']));
$nb_resultats_recherche_membre=$reponse_nom->fetch();
if(!$nb_resultats_recherche_membre) /*si il n'y a pas de resultat*/
{
// Controle de l'adresse mail si elle est dans la base de donnée
$reponse_mail = $connection->prepare('SELECT email FROM comptes WHERE email= :email');
$reponse_mail->execute(array('email'=> $_POST['email']));
$nb_resultats_recherche_mail=$reponse_mail->fetch();
if(!$nb_resultats_recherche_mail) /*si il n'y a pas de resultat*/
{
// code de sécurité
if( $_SESSION['security_code'] == $_POST['security_code'] && !empty($_SESSION['security_code'] ) )
{
// Insert you code for processing the form here, e.g emailing the submission, entering it into a database.
unset($_SESSION['security_code']);
//On echape les variables pour pouvoir les mettre dans une requette SQL
$nom = $_POST['nom'];
$email =$_POST['email'];
$sexe = $_POST['sexe'];
// Creation d'un identifiant
$tail = 8;
$lett = "abcdefghijklmnopqrstuvwxyz0123456789AZERTYUIOPMLKJHGFDSQWXCVBN";
srand(time());
for ($i=0;$i<$tail;$i++)
{
@$pass2.=substr($lett,(rand()%(strlen($lett))),1);
}
$pass1 = hash("sha512", $pass2);
//On enregistre les informations dans la base de donnee
if ($form === true)
{
/***********************************************************************************************/
$compte=array( ':nom'=> $nom,
':pass'=> $pass1,
':email'=> $email,
':sexe'=> $sexe,
':date'=> date("Y-m-d"),
':quipass'=> date("Y-m-d"),
':heure'=> date("H:i:s"),
':heurepass'=> date("H:i:s"),
':ip'=> $_SERVER['REMOTE_ADDR']);
$values= join(', ',array_keys($compte));
$req=$connection->prepare( 'INSERT INTO comptes ('.str_replace(':','',$values).') VALUES('.$values.')' );
$req->execute($compte);
$idXX = $connection->lastInsertId();
$infoscompte=array(':idXX'=> $idXX,
':nom'=> $_POST['nom'],
':email'=> $_POST['email']);
$values_info= join(', ',array_keys($infoscompte));
$req_info=$connection->prepare( 'INSERT INTO infoscomptes ('.str_replace(':','',$values_info).') VALUES('.$values_info.')' );
$req_info->execute($infoscompte);
$boundary = md5(uniqid(rand()));
$to = $email;
$reply = 'NO REPLY';
$subject = 'Votre password H-immo';
$sujet = 'Votre password H-immo';
$logo_mail = 'http://www.h-immo.be/design/logo1.png';
$headers = "From: [email protected] <".$to.">\r\n";
$headers .= "X-Sender: [email protected]\r\n";
$headers .= "Reply-To: ".$reply."\r\n";
$headers .= "Return-Path: ".$email."\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$messages .= "--".$boundary."--";
$messages = "<html><body>";
$messages .= "<img src=".$logo_mail." width='187' height='125' border='0'><br />";
$messages .= "<b>Sujet</b> :".$sujet."<br />";
$messages .= "<b>Nom</b> :".$nom."<br />";
$messages .= "<b>Email</b> :".$email."<br />";
$messages .= "<b>Password</b> :".$pass2."<br />";
$messages .= "<a href='http://www.h-immo.be'>Connexion</a>";
$messages .= "</body></html>";
$messages .= "--".$boundary."--";
(@mail($to,$subject,$messages,$headers));
?>
<br /><br /><br />
<div align="center" class="message">Vous avez bien été inscrit. Vous pouvez dorénavant vous connecter,<br />
avec votre password envoyez par email.<br />
<span color="#FF0000">Vérifier dans les spams pour votre password</span><br /><br /><br />
<span class="button"><a href="accueil.php">Se connecter</a></span></div>
<?php
}
else
{
//Sinon on dit quil y a eu une erreur
$FORM = TRUE;
$message = 'Une erreur est survenue lors de l\'inscription.';
}
}
else
{
//Sinon, on dit que l'email voulu est deja pris
$FORM = TRUE;
$message = 'Le code de sécurité n\'est pas valable!!!!!!!!!!..';
}
}
else
{
//Sinon, on dit que le pseudo voulu est deja pris
$FORM = TRUE;
$message = 'Un autre utilisateur utilise déjà l\' adresse mail contacter le webmaster pour fraude!!!!!!.';
}
}
else
{
//Sinon, on dit que les mail ne sont pas identiques
$FORM = TRUE;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}
}
else
{
//Sinon, on dit que l'email_2 nest pas valide
$FORM = TRUE;
$message = 'Les E-mail que vous avez entré ne sont pas identiques.';
}
}
else
{
//Sinon, on dit que l'email nest pas valide
$FORM = TRUE;
$message = 'L\'email de comparaison que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que le mot de passe nest pas assez long
$FORM = TRUE;
$message = 'L\'email que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que les mail ne sont pas identiques
$FORM = TRUE;
$message = 'Le nom unqiquement des lettres svp!!!!null.';
}
}
else
{
$form = TRUE;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div class="message" style="color:red;text-align:center;"><b>'.$message.'</b></div>';
}
//On affiche le formulaire
echo'<table style="width:100%;height:auto;border:0px;align:center;">
<tr>
<td style="white:1OO%;height:auto;">
<form method="post" action="'.$_SERVER['PHP_SELF'].'">
<table style="width:auto;border:0px;">
<tr>
<td style="width:auto;">
<table style="width:100%;border:0px;">
<tr>
<td style="width:40%;"><b>Nom<img src="design/force.gif" width="16" height="16" alt=""/> :</b></td>
<td style="width:60%;">';
?>
<input class="contact_input" type="text" name="nom" value="<?php if(isset($_POST['nom'])){echo $_POST['nom'];} ?>" style="width:160px;"/>
<?PHP
echo'</td>
</tr>
<tr>
<td style="width:40%;"><b>Email<img src="design/force.gif" width="16" height="16" alt="" /> :</b></td>
<td style="width:60%;">';
?>
<input class="contact_input" type="text" name="email" value="<?php if(isset($_POST['email'])){echo $_POST['email'];} ?>" style="width:160px;"/>
<?PHP
echo'</td>
</tr>
<tr>
<td style="width:40%;"><b>Email2<img src="design/force.gif" width="16" height="16" border="0" alt="" /> :</b></td>
<td style="width:60%">';
?>
<input class="contact_input" type="text" name="email_2" value="<?php if(isset($_POST['email'])){echo $_POST['email_2'];} ?>" style="width:160px;"/>
<?PHP
echo'</td>
</tr>
<tr>
<td></td>
<td><p><b>Mr :</b>
<input class="input" type="radio" name="sexe" value="H" />
<b>Mme :</b>
<input class="input" type="radio" name="sexe" value="F" />
</p>
<p><b>Pro :</b><input class="input" type="radio" name="sexe" value="pro" /></p></td>
</tr>
<tr>
<td style="width:40%;"><b>Code sécurité</b></td>
<td style="60%;">
<img src="CaptchaSecurityImages.php??rand= rand()" id="captchaimg" alt="" /><br />
<input class="contact_input" id="security_code" name="security_code" type="text" style="width:160px;"/>
</td>
</tr>
<tr>
<td style="width:40%;"> </td>
<td style="width:60%;">Impossible de lire l´image cliquez sur? <a href="javascript: refreshCaptcha();"><font color="red">ici</font></a> à rafraîchir</td>
</tr>
</table>
<table style="width:100%;border:0px;">
<tr>
<td>
<div align="center"><input type="submit" name="Submit" class="bb" value="Envoyer"/></div>
</td>
</tr>
</table>
</td>
</tr>
</table>';
echo'<script language="JavaScript" type="text/javascript">
function refreshCaptcha()
{
var img = document.images["captchaimg"];
img.src = img.src.substring(0,img.src.lastIndexOf("?"))+"?rand="+Math.random()*1000;
}
</script>';
echo'<br /><br />
</form></td>
</tr>
</table>';
}
unset($compte);
unset($infoscompte);
?>