J'utilise une fonction qui permet de faire modifier son mot de passe en cas d'oubli :
function recover($recoverEmail){
$email = $_POST['recoverEmail'];
if(preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!",$email)){
if(!empty($_POST['recoverEmail'])){
$req = Bdd::connect() -> prepare('SELECT id, nom, prenom, email FROM users WHERE email = :email');
$req -> execute(array('email' => $email));
$donnees = $req -> fetch();
if(!$donnees){
echo '<span class="error">Aucun compte n\'est associé à cette email :<br />'.$email.'</span>';
} else {
$newPass = chaine(8);
$cryptPass = sha1($newPass);
$req1 = Bdd::connect()->prepare('UPDATE users SET mdp = :newPass WHERE email = :email');
$req1 -> execute(array('newPass' => $cryptPass,'email' => $email));
$req1 -> closeCursor();
if(preg_match('#@(hotmail|live|msn).[a-z]{2,4}$#', $email)){
$passage_ligne = "\n";
} else {
$passage_ligne = "\r\n";
}
$headers = 'From: Web Astronomie <[email protected]>'.$passage_ligne;
$headers .= 'Reply-to: Web Astronomie <[email protected]>'.$passage_ligne;
$headers .= 'MIME-Version: 1.0'.$passage_ligne;
$headers .= 'Content-Type: multipart/alternative;'.$passage_ligne;
$sujet = 'Modification du mot de passe de votre compte Web Astronomie';
$message .= 'Content-Type: text/html; charset=\'ISO-8859-1\''.$passage_ligne;
$message .= 'Content-Transfer-Encoding: 8bit'.$passage_ligne;
$message .= '<table>';
$message .= '<tr><td>Coucou <strong>Test</strong></td></tr>';
$message .= '</table>';
if(mail($email, $sujet, $message, $headers)){
echo '<span class="success">Un nouveau mot de passe viens de vous être envoyé</span>';
} else {
echo '<span class="error">Erreur lors de l\'envoie de votre mot de passe</span>';
}
}
$req -> closeCursor();
} else {
echo '<span class="error">Veuillez remplir au moins un champ</span>';
}
} else {
echo '<span class="error">Veuillez entrer une adresse électronique valide</span>';
}
}
Le problème c'est que dans l'email reçu, je reçois ça : Code : Tout sélectionner
Content-Type: text/html; charset='ISO-8859-1'
Content-Transfer-Encoding: 8bit
<table><tr><td>Coucou <strong>Test</strong></td></tr></table>Pourtant je pense avoir rien oublié dans le script.
Merci pour votre aide