IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

RedHat / CentOS / Fedora Discussion :

Fonction mail php sur une machine Linux


Sujet :

RedHat / CentOS / Fedora

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2013
    Messages : 326
    Points : 156
    Points
    156
    Par défaut Fonction mail php sur une machine Linux
    Bonjour,

    Je souhaiterai envoyé un mail de récupération de mot de passe via un formulaire PHP.

    Cependant, l'envoi de mail ne s'effectue pas. Faut-il installer des packages spécifiques ? J'utilise la fonction d'envoi de mail basique de php :
    - http://www.w3schools.com/php/php_mail.asp

    Voici le code si ça peut aider :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    if (isset($_POST['send'], $_POST['email']))
    {
    	print "TEST\n";
     
    	$mdp = genererMDP(8);
    	$nbRows = $bdd->query('SELECT count(*) FROM config_users WHERE email ="' . $_POST['email'] .'" ')->fetchColumn();
     
    	if ($nbRows == 1  && preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['email']))
    	{
    		$sql = 'UPDATE config_users SET password = "' . $mdp . '" WHERE email ="' . $_POST['email'] .'" ';
    		$q = $bdd->prepare($sql);
    		$q->execute(array($mdp, $_POST['email']));
     
    		$to = $_POST['email'];
    		$sujet = "Récupération de mot de passe";
    		$corps = "Bonjour, \n\r\n\r Voici un mot de passe temporaire qu'il vous faudra changer dans les plus brefs délais !\n\r\n\r
    				Mot de passe : $mdp.\n\r\n\r
    				Cordialement,\r\n\r\n
    				Les admins CQuest";
    		$emetteur = "From: loic.savoye@orange.com";
    		if (@mail($to, $sujet, $corps, $emetteur))
    		{
    			echo 'Le mail contenant votre mot de passe a été envoyé.';
    		}
    		else
    		{
    			echo 'Echec de l\'envoi du mail.';
    		}
    	}
    	else
    	{
    		echo 'L\'adresse mail n\'est pas enregistrée dans la base de données !';
    	}
    }
    Je suis allé voir dans les logs et j'ai cette erreur :

    stat = Deferred: Connection refused by [127.0.0.1]
    C'est le localhost qui bloque l'envoi des mails du coup ? Si oui quelle est la config à modifier ?

    J'ai appliqué cette commande : sudo chkconfig --levels 235 sendmail on...
    Du coup nouvelle erreur :

    SYSERR(apache) : savemail: cannot save rejected email anywhere


    Je viens du forum PHP !

    Cdlt

  2. #2
    Membre averti Avatar de blackstreet
    Inscrit en
    Avril 2004
    Messages
    304
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 304
    Points : 335
    Points
    335
    Par défaut
    Bonjour,

    Je pense que PHP ne peux pas envoyer de mail directement de Linux, s'il y'a pas de Serveur mail, ou client mail installé, de ce fait, je pense qu'il te faut configurer sendmail par exemple, le démarrage par défaut ne convient pas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/07/2014, 10h07
  2. Connaitre le cpu et la mémoire consommée sur une machine linux
    Par supcomingenieur dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 20/06/2013, 10h54
  3. [Batch] Un souci : Script batch permet de copier un fichier sur une machine Linux distant
    Par free_source dans le forum Scripts/Batch
    Réponses: 11
    Dernier message: 09/02/2012, 16h26
  4. Réponses: 2
    Dernier message: 08/04/2008, 16h29
  5. Réponses: 6
    Dernier message: 26/03/2004, 16h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo