Créer un compte
Vous allez créer un compte sur ...
Le fait de devenir membre vous fera bénéficier de plusieurs avantages :
- uploader des torrents,
- disposer d'un espace membre,
- disposer de statistiques personnelles.
Merci de choisir un pseudo, un mot de passe et une adresse e-mail. Vous recevrez un e-mail de notre part avec un lien qui vous permettra d'activer votre nouveau compte.
(Eventuellement, merci de vérifier votre répertoire Spam)
prepare('SELECT email FROM blog_members WHERE email = :email');
$stmt->bindValue(':email',$postemail,PDO::PARAM_STR);
$stmt->execute();
$res = $stmt->fetch();
if ($res) {
$error[] = 'Cette adresse e-mail est déjà utilisée !';
}
}
//Vérification simple de la validité de l'e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$error[] = 'Cette adresse e-mail n\'est pas valide !';
}
// Le username ne peut pas contenir de caractères spéciaux, balises, etc.
$postusername = $_POST['username'];
if (!preg_match("/^[a-zA-Z0-9]+$/",$postusername)) {
$error[] = 'Le pseudo ne peut contenir que des lettres et des chiffres !';
}
// On cherche si le pseudo fait moins de 4 caractères et s'il est déjà dans la base
if (strlen($_POST['username']) < 4) {
$error[] = 'Le pseudo est trop court ! (4 caractères minimum)';
}
else {
$stmt = $db->prepare('SELECT username FROM blog_members WHERE username = :username');
$stmt->bindValue(':username',$postusername,PDO::PARAM_STR);
$stmt->execute();
$row = $stmt->fetch();
if (!empty($row['username'])) {
$error[] = 'Ce pseudo est déjà utilisé ! Merci d\'en choisir un autre.';
}
}
$verif_box = $_REQUEST["captcha"];
// on vérifie le captcha
if(md5($verif_box).'a4xn' == $_COOKIE['tntcon']) {
if(!isset($error)){
$hashedpassword = $user->password_hash($_POST['password'], PASSWORD_BCRYPT);
$pid = md5(uniqid(rand(),true));
$activation = md5(uniqid(rand(),true));
// Remove all illegal characters from an email address
$email = filter_var($email, FILTER_SANITIZE_EMAIL);
try {
//On insert les données dans la table blog_members
$result1 = $db->prepare('INSERT INTO blog_members (username,password,email,pid,memberDate,active) VALUES (:username,:password,:email,:pid,:memberDate,:active)') ;
$result1->execute(array(
':username' => $username,
':password' => $hashedpassword,
':email' => $email,
':pid' => $pid,
':memberDate' => date('Y-m-d H:i:s'),
':active' => $activation
));
$newuid = $db->lastInsertId();
//On insert aussi le PID et l'ID du membre dans la table xbt_users
$result2 = $db->prepare('INSERT INTO xbt_users (uid, torrent_pass) VALUES (:uid, :torrent_pass)');
$result2->execute(array(
':uid' => $newuid,
':torrent_pass' => $pid
));
if(!$result1 || !$result2)
{
$error[] = 'Erreur : votre compte utilisateur n\'a pas pu être créé.';
}
else {
// si tout OK, on envoie le mail de confirmation de compte
$newuid = $db->lastInsertId();
$to = $email;
$subject = "Confirmation d'enregistrement de compte";
$body = "
Merci de vous êtes enregistré(e) sur ".SITENAMELONG.".
Pour activer votre compte, veuillez cliquer sur le lien suivant: ".SITEURL."/activate.php?x=$newuid&y=$activation
Cordialement,
Le webmaster de ".SITENAMELONG."
";
$mail = new Mail();
$mail->setFrom(SITEMAIL);
$mail->addAddress($to);
$mail->subject($subject);
$mail->body($body);
$mail->send();
//redirect to index page
header('Location: ../membres.php?action=activation');
exit;
}
} catch(PDOException $e) {
echo $e->getMessage();
}
}
} // captcha
else {
$error[] = 'Mauvais code anti-spam ! Veuillez recopier le bon code.';
}
}
//check for any errors
if(isset($error)){
foreach($error as $error){
echo '
'.$error.'
';
}
}
?>