connexion();
$bdd->escape($Un);
$bdd->escape($Ui);
$user = $bdd->unique_query("SELECT * FROM user WHERE pseudo = '$Un' AND mdpNOUV = '$Ui';");
if ($user && $bdd->unique_query("UPDATE user SET mdp = mdpNOUV, mdpNOUV = '' WHERE pseudo = '$Un'")) {
$bdd->deconnexion();
$template->assign('message','Votre mot de passe a été réinitialisé avec succès.');
$template->assign('script','');
$template->assign('couleur','green');
$template->display('cms/erreur.tpl');
exit;
}
else {
$bdd->deconnexion();
$template->assign('message','Ce lien a expiré !');
$template->assign('couleur','red');
$template->display('cms/erreur.tpl');
exit;
}
}
if (isset($_POST['HB_pseudo']) && isset($_POST['HB_mail']) && isset($_POST['HB_captcha'])) {
$ok = true;
if (empty($_POST['HB_pseudo']) || empty($_POST['HB_mail'])) {
$ok = false;
$erreur .= '
Pseudo ou adresse électronique vide :
Veuillez compléter tous les champs de ce formulaire avant de le valider.
';
}
if (strtolower($_POST['HB_captcha']) != strtolower($_SESSION['aleat_nbr'])) {
$ok = false;
$erreur .= 'Code de vérification incorrect :
Le texte que vous avez recopier ne correspondait pas au texte de l\'image, veuillez recommencer.
';
}
if ($ok) {
$HB_pseudo = $_POST['HB_pseudo'];
$HB_mail = $_POST['HB_mail'];
$bdd->connexion();
$bdd->escape($HB_pseudo);
$bdd->escape($HB_mail);
$user = $bdd->unique_query("SELECT id FROM $table_user WHERE pseudo = '$HB_pseudo' AND mail = '$HB_mail';");
if ($user) {
$liste = "abcdefghijklmnopqrstuvwxyz123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$code = '';
while(strlen($code) != 8) {
$code .= $liste[rand(0,60)];
}
$passNOUV = sha1(strtoupper($HB_pseudo).':'.$code);
$bdd->unique_query("UPDATE $table_user SET mdpNOUV = '$passNOUV' WHERE pseudo = '$HB_pseudo';");
$bdd->deconnexion();
$mail = new PHPmailer();
$mail->SetLanguage('fr', _FCORE."hb_game/Class/");
$mail->IsSMTP();
$mail->IsHTML(true);
$mail->Host='s-fr.com';
$mail->From='no-reply@halo-battle.s-fr.com';
$mail->FromName='Halo-Battle';
$mail->SMTPAuth=true;
$mail->Username='no-reply@halo-battle.s-fr.com';
$mail->Password='hD3e2nXu';
$mail->AddAddress($HB_mail);
$mail->AddReplyTo('no-reply@halo-battle.s-fr.com');
$mail->Subject='Halo-Battle :: Reinitialisation du mot de passe';
$mail->Body='Halo-Battle :: Réinitialisation du mot de passeBonjour '.$HB_pseudo.',
Vous recevez ce mail suite à votre demande de réinitialisation de mot de passe. Pour confirmer votre réinitialisation de mot de passe et ainsi pouvoir de nouveau accéder au jeu, cliquez sur le lien ci-après :
'.$_SERVER['HTTP_HOST'].'?p=oubliemdp&i='.$passNOUV.'&n='.$HB_pseudo.'
Votre nouveau mot de passe est : '.$code.'
A bientôt dans Halo-Battle,
Le staff
';
if(!$mail->Send()){ //Teste si le return code est ok.
$template->assign('message','Erreur lors de l\'envoie du courriel de confirmation !
'.$mail->ErrorInfo.'
Si le problème perciste, contactez un administrateur.');
$template->assign('couleur','red');
$template->display('cms/erreur.tpl');
exit;
}
else{
$template->assign('message','Un nouveau mot de passe a été généré pour votre compte, vous le trouverez dans votre boîte de courrier électronique.');
$template->assign('couleur','green');
$template->display('cms/erreur.tpl');
exit;
}
$mail->SmtpClose();
unset($mail);
}
else {
$bdd->deconnexion();
$erreur .= 'Nom d\'utilisateur ou adresse électronique incorrect :
L\'adresse électronique que vous avez indiqué ne correspond pas au nom d\'utilisateur. Réessayez.
';
}
}
}
$template->assign('erreurs', $erreur);
?>