Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php include ("header.php")?>
- <div style="text-align:left; margin-left: 60px; margin-right: 60px;">
- <span style="font-family: Helvetica,Arial,sans-serif; font-weight: bold;">Inscription</span>
- <br />
- <br />
- //formulaire
- <form method="post" name="users" action="" >
- Pseudo:<input type="text" name="pseudo" /><br /><br />
- Mot de passe:<input type="password" name="password" /><br /><br />
- Confirmation du mot de passe:<input type="password" name="pass_confirm" /><br /><br />
- Adresse email:<input type="text" name="email"/><br /><br />
- <img src="verif_code_gen.php" alt="Code de vérification" />
- Merci de retaper le code de l'image ci-dessus: <input type="text" name="verif_code" /><br /><br />
- <input type="submit" value="s'inscrire"/>
- </form>
- <?php
- //connection base de données
- $serveur = 'sql5.power-heberg.net';
- $user = 'lecrisilenci2';
- $pass = 'klebsiella72';
- $bdd = 'lecrisilenci2';
- $connect= mysql_connect($serveur ,$user ,$pass) or die('Une erreur a eu lieu lors de la connection mysql');
- mysql_select_db($bdd ,$connect) or die ('Un erreur a eu lieu lors du choix de la base de données');
- //vérification du formulaire
- //D'abord les caractères en rapport avec le mail
- $atom = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; // caractères autorisés avant l'arobase
- $domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; // caractères autorisés après l'arobase (nom de domaine)
- $regex = '/^' . $atom . '+' . // Une ou plusieurs fois les caractères autorisés avant l'arobase
- '(\.' . $atom . '+)*' . // Suivis par zéro point ou plus
- // séparés par des caractères autorisés avant l'arobase
- '@' . // Suivis d'un arobase
- '(' . $domain . '{1,63}\.)+' . // Suivis par 1 à 63 caractères autorisés pour le nom de domaine
- // séparés par des points
- $domain . '{2,63}$/i'; // Suivi de 2 à 63 caractères autorisés pour le nom de domaine
- // on teste l'existence des variables et champs non vide.
- if ((isset ($_POST['pseudo']) && !empty($_POST['pseudo']))
- && (isset($_POST['password']) && !empty($_POST['password']))
- && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))
- && (isset($_POST['email']) && !empty($_POST['email']))
- && (isset($_POST['verif_code'])) && !Empty($_POST['verif_code'])){
- // on teste les deux mots de passe.
- if ($_POST['password'] == $_POST['pass_confirm']) {
- //on teste les caractères spéciaux.
- if((strrpos($_POST['pseudo']) && strrpos($_POST['password'])
- && strrpos($_POST['pass_confirm']))){
- //on vérifie le code de vérification.
- if($_POST['verif_code']==$_SESSION['aleat_nbr']){
- //on vérifie le mail.
- if (preg_match($regex, $email)){
- //definition des variables qu'on envoie sur la base de données
- $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])) ;
- $password = mysql_real_escape_string(htmlspecialchars($_POST['password'])) ;
- $email = mysql_real_escape_string(htmlspecialchars($_POST['email'])) ;
- //envoie des variables dans la base
- if ( ! mysql_query ( "INSERT INTO `users` VALUES ( '' , '$pseudo' , '$password' , $email )" ) )
- {
- echo "Impossible de vous enregistrer suite à une erreur interne.";
- }
- else
- {
- //redirection et sortie si erreur DB
- header ( 'Location: inscription.php' );
- exit;
- }
- //requete pour demander l'envoie d'un mail à moi-même avec dessus un lien de confirmation pour faire passer l'état des users de 0 à 1, pas activé, activé.
- $monemail = "guildependulum@gmail.com";
- }else {echo " vous devez remplir tous les champs avant de soumettre le formulaire.";}
- }else {echo "Les 2 mots de passe sont différents.";}
- }else {echo "L'utilisation de caractères spéciaux n'est pas autorisée.";}
- }else {echo "Le code de vérification est incorrect.";}
- }else {echo "L'adresse e-mail n'est pas valide.";}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement