Php mail n'envoie pas de mail
allan59820
Messages postés
83
Statut
Membre
-
allan59820 Messages postés 83 Statut Membre -
allan59820 Messages postés 83 Statut Membre -
Bonjour, je suis en test d'envoi de mail d'activation a une inscription mais le mail ne s'envoie pas . J'ai suivi un tuto des teachers du net. Je n'ai aucune erreur d'afficher.
Voici mon code :
merci d'avance de vos réponses
Voici mon code :
<?php
require('config/database.php');
require('includes/function.php');
require('includes/constants.php');
require("views/register.views.php");
//Si le formulaire a ete soumis
if(isset($_POST['envoi'])){
//Si tous les champs ont été remplis
if(not_empty(['pseudo', 'password', 'password_confirm', 'email' ])) {
$errors = []; //tableau contenant l'ensemble des erreurs
extract($_POST);
//si le pseudo fait moins de 3 caractères
if(mb_strlen($pseudo) < 3){
$errors[] = "Pseudo trop court (Minimum 3 caractères).";
}
//vérification d'un adresse mail valide
if(! filter_var($email, FILTER_VALIDATE_EMAIL)){
$errors[] = "Adresse E-mail invalide.";
}
//Si le mot de passe fait moin de 6 caractères
if(mb_strlen($password) < 6){
$errors[] = "Mot de passe trop court (Minimum 6 caractères).";
} else{
//vérification que les 2 mots de passe soit identique
if($password != $password_confirm){
$errors[] = "Les deux mots de passe ne concordent pas.";
}
}
//SI le mot de passe est déja dans la base de donnée
if(is_already_in_use('pseudo', $pseudo, 'users')) {
$errors[] = "Pseudo déja utilisé.";
}
//SI l'email est déja dans la base de donnée
if(is_already_in_use('email', $email, 'users')) {
$errors[] = "Adresse E-mail déja utilisé.";
}
if(count($errors) == 0){
//Envoi d'un mail d'activation
$to = $email;
$subject = WEBSITE_NAME. " - ACTIVATION DE COMPTE";
$token = sha1($pseudo.$email.$password);
ob_start();
require('templates/emails/activation.tmpl.php');
$content = ob_get_clean();
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to, $subject, $content, $headers);
//Informer l'utilisateur pour qu'il regarde sa boite mail
echo "Mail d'activation envoyé !";
}
} else {
$errors[] = "Veuillez remplir tous les champs";
}
}
?>
merci d'avance de vos réponses
A voir également:
- Php mail n'envoie pas de mail
- Windows live mail - Télécharger - Mail
- Publipostage mail - Accueil - Word
- Comment télécharger un mail - Guide
- Gmail envoyer un mail - Guide
- Cegetel mail ✓ - Forum Mail