1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219
| <?php
require_once 'config.php';
require 'fonctions.php';
$IP=$_SERVER['REMOTE_ADDR'];
$message = NULL;
$heure=time();
do // le code de confirmation doit etre unique
{
$sessionverif=md5($heure.rand(100000,999999));
$resultat = mysql_query("SELECT * FROM utilisateurs WHERE codeverif ='$sessionverif'");
}
while(false!=($rq = mysql_fetch_array ($resultat)));
$heure2=$heure-$valid2;
mysql_query("DELETE FROM utilisateurs WHERE heure<".$heure2.";"); // suprime les codes expiré
if (isset ( $_POST ['submit'] ))
{
//verification si prenom vide
if (empty ( $_POST ['prenom'] )) {
$p = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre prénom</p>';
} else {
$p = echapppement ( $_POST ['prenom'] ); // j'utilise la variable p qui contiendra la variable prenom apres le test
}
if (empty ( $_POST ['nom'] )) {
$n = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre nom</p>';
} else {
$n = echapppement ( $_POST ['nom'] );
}
if (empty ( $_POST ['email'] )) {
$e = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre email</p>';
} else {
$e = echapppement ( $_POST ['email'] );
}
if (! preg_match ( "#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST ['email'] )) {
$e = FALSE;
$message .= '<p>Vous n\'avez pas indiqué un email normal</p>';
}
if (empty ( $_POST ['mdp1'] )) {
$mp = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre mot de passe</p>';
} else {
if ($_POST ['mdp1'] == $_POST ['mdp2']) {
if (eregi ( "^[[:alnum:]]{4,20}", stripslashes ( trim ( $_POST ['mdp1'] ) ) )) {
$mp = $_POST ['mdp1'];
}
else {
$mp = FALSE;
$message .= "<p>Vous n'avez pas saisies de mots de passes correct</p>
<p>veuillez utiliser un mot de passe composé de lettres, chiffres, _, de 4 à 20 caractéres</p>";
}
} else {
$mp = FALSE;
$message .= '<p>Vous avez deux mot de passes différents</p>';
}
}
if (empty ( $_POST ['quartier'] )) {
$q = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre quartier</p>';
} else {
$q = echapppement ( $_POST ['quartier'] );
}
if (empty ( $_POST ['numero'] )) {
$num = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre numero de telephone</p>';
} else {
$num = echapppement ( $_POST ['numero'] );
}
if (! preg_match ( "#^0[0-68]([-. ]?[0-9]{2}){4}$#", $_POST ['numero'] )) {
$num = FALSE;
$message .= '<p>Vous n\'avez pas un numero de telephone correct</p>';
}
if (empty ( $_POST ['codepostal'] )) {
$cdp = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre code postal</p>';
} else {
$cdp = echapppement ( $_POST ['codepostal'] );
}
if (! preg_match ( "#^[0-9]{5}$#", $_POST ['codepostal'] )) {
$cdp = FALSE;
$message .= '<p>votre code postal n\'est pas former correctement</p>';
}
if (empty ( $_POST ['pseudo'] )) {
$ps = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre pseudo</p>';
} else {
$ps = echapppement ( $_POST ['pseudo'] );
}
if (empty ( $_POST ['jour'] ) && empty( $_POST ['mois'] ) && empty( $_POST ['anne'] )) {
$j = FALSE;
$a=FALSE;
$m=FALSE;
$message .= '<p>Vous n\'avez pas tout indiqué dans votre date de naissance</p>';
} else {
if (! checkdate ( $_POST ['mois'], $_POST ['jour'], $_POST ['anne'] ) == true) {
$j = FALSE;
$m = FALSE;
$a = FALSE;
echo 'la date n\'est pas valide';
}
else {
$m = echapppement ( $_POST ['mois'] );
$a = echapppement ( $_POST ['anne'] );
$j = echapppement ( $_POST ['jour'] );
}
}
if (empty ( $_POST ['adresse'] )) {
$adr = FALSE;
$message .= '<p>Vous avez oublier d\'indiqué votre adresse</p>';
} else {
$adr = echapppement ( $_POST ['adresse'] );
}
if ($p && $n && $a && $adr && $e && $j && $m && $mp && $cdp) {
$rq = "SELECT pseudo FROM utilisateurs WHERE pseudo='$ps'";
$result = mysql_query ( $rq );
if (mysql_num_rows ( $result ) == 0) {
$rq = "SELECT email FROM utilisateurs WHERE email='$e'";
$result = mysql_query ( $rq );
if (mysql_num_rows ( $result ) == 0) {
$rq = "INSERT INTO utilisateurs (prenom, pseudo, nom, email, mdp, date_naissance, telephone, adresse, quartier, code_postal, codeverif, ip_inscription, date_enreg)
VALUES ('$p', '$ps', '$n', '$e', md5('$mp'), '$a-$m-$j', '$num', '$adr', '$q', '$cdp', '$sessionverif', '$IP', NOW())";
$result = mysql_query ( $rq );
if (! $result) {
echo "Erreur avec le serveur de base de données, veuiller contacter l'administrateur ou attendre quelques minutes, merci" . mysql_error ();
}
else {
echo("<p>Merci.</p> <p>Votre inscription est faite, vous allez recevoir un mail de confirmation avec un lien de confirmation. Ce lien n'est valable que 7 jours, ce délais dépasser vous allez devoir refaire une inscription.</p>");
// TODO mail a faire ici avec la fonction mail
$subject = "Confirmation dinscription";
$messagemail = '<html>
<head>
<title>Confirmation d\inscription</title>
</head>
<body>
Bonjour ' . $n . ',<br/><br/>
<h1>Confirmation de l\'Email Vox</h1><br/>
Merci d\'avoir créé votre compte!<br/>
Cliquez sur le lien suivant pour confirmer votre adresse email et terminer l\'inscription:
<a href="http://localhost/damien/chatsperdu/confirmation_inscription?code=' . $sessionverif . '">this link</a>.<br/><br/>
Si vous n\'avez jamais voulu vous inscrire sur notre site, alors ignorez cet email. L\inscription à été effectuer Par l\'ip' . $IP . ' le ' . date ( "r" ) . ' (heure du serveur).<br/>
Nous espérons vous accueillir dans notre communauté!<br/>
L\'équipe
</body>
</html>
';
/* To send HTML mail, you can set the Content-type header. */
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
/* additional headers */
$headers .= "To: " . $n . " <" . $e . ">\r\n";
$headers .= "From: Site <do_not_reply@chatsperdu.com>\r\n";
if (! mail ( $e, $subject, $messagemail, $headers )) {
echo ("erreur mail");
}
include 'inc_footer.php';
exit();
}
} else {
$message .= '<p>l\'email existe deja</p>';
}
} else {
$message .= '<p>l\' utilisateur existe deja</p>';
}
}
}
if (isset ( $message )) {
echo ($message);
}
?> |
Partager