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
| <?php
mysql_connect("localhost", "root", "");
mysql_select_db("inscription");
$result = mysql_query("
SELECT username, email
FROM site_user WHERE username = '" . $_POST["username"] . "'
OR email = '" . $_POST["email"] . "'
");
// Si un enregistrement est trouvé
if(mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_array($result))
{
// ----------
// Génération d'un mot de passe de 8 caractères alpha-numériques
// ----------
$tableau = array("0","1","2","3","4","5","6","7","8","9",
"a","b","c","d","e","f","g","h","i","j","k","l","m","n",
"o","p","q","r","s","t","u","v","w","x","y","z",
"A","B","C","D","E","F","G","H","I","J","K","L","M","N",
"O","P","Q","R","S","T","U","V","W","X","Y","Z");
// ----------
$valeurs_aleatoires = array_rand($tableau, 8);
// ----------
$mot_de_passe = "";
foreach($valeurs_aleatoires as $i)
{
$mot_de_passe = $mot_de_passe . $tableau[$i];
}
$updateSQL= "UPDATE site_user SET password WHERE username = '" . $_POST["username"] . "'
OR email = '" . $_POST["email"] . "'
"); }
if (isset($_POST['envoye']) && $_SERVER['HTTP_REFERER'] == 'http://localhost/balthazar/accueil/contact.php')
{
/* Récupération des valeurs des champs du formulaire */
if (get_magic_quotes_gpc())
{
$username = stripslashes(trim($_POST['username']));
$email = stripslashes(trim($_POST['email']));
}
else
{
$username = trim($_POST['username']);
$email = trim($_POST['email']);
}
/* Expression régulière permettant de vérifier si le
* format d'une adresse e-mail est correct */
$regex_mail = '/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i';
/* Expression régulière permettant de vérifier qu'aucun
* en-tête n'est inséré dans nos champs */
$regex_head = '/[\n\r]/';
/* On vérifie que tous les champs sont remplis */
if (empty($username)
|| empty($email) )
{
$alert = 'Tous les champs doivent être renseignés';
}
/* On vérifie que le format de l'e-mail est correct */
elseif (!preg_match($regex_mail, $email))
{
$alert = 'L\'adresse '.$email.' n\'est pas valide';
}
/* Si aucun problème et aucun cookie créé, on construit le message et on envoie l'e-mail */
elseif (!isset($_COOKIE['sent']))
{
/* Destinataire (votre adresse e-mail) */
$to = 'martialb333@laposte.net';
// Envoi du mail
$sujet = "envoi mot de passe oublié";
$message = "Voici votre nouveau mot de passe :\n"; $message .= "&password=" . $mot_de_passe;
// Si une erreur survient
if(!@mail($_POST["email"], $sujet, $message))
{
$alert = "Une erreur est survenue lors de l'envoi du mail <br />\n";
}
else
{
// Message de confirmation
$alert = "Vous avez reçu votre nouveau mot de passe<br />\n";
$alert .= "Un email vient de vous être envoyé";
}
}
/* On créé un cookie de courte durée (ici 120 secondes) pour éviter de renvoyer un mail en rafraichissant la page */
setcookie("sent", "1", time() + 120);
/* On détruit la variable $_POST */
unset($_POST);
}
else
{
$alert = 'Erreur d\'envoi de l\'e-mail';
}
}
/* Cas où le cookie est créé et que la page est rafraichie, on détruit la variable $_POST */
else
{
unset($_POST);
} |
Partager