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

Langage PHP Discussion :

envoyer un mail en local avec mamp


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut envoyer un mail en local avec mamp
    Bonjour, après plusieurs recherches et test, je n'arrive toujours pas a envoyer un mail en local.
    j'ai bien changé mon php.ini dans la configuration voulu mais rien n'y fait. J'ai pris une page de contact d'un site déjà en ligne, page qui fonctionne car je l'ai retesté avant d'essayer en local, mais avec mamp, rien. Donc, j'en viens à me demander si on peu faire des mail local sur mac.

    Si quelqu'un pouvait m'aider, cela m'arrangerais. Je fait un tuto en ce moment et j'ai besoin d'un retour de mail pour continuer.
    merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Comment as-tu renseigné ton php.ini ?
    Quelle erreur ou résultat obtiens-tu ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    le php.ini a été renseigné ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    Code
    sendmail_path =/usr/sbin/sendmail -t -i -f monadresse@orange.fr
    les erreurs, alors comme c'est pour une inscription, j'ai au départ l'inclusion dans ma bdd. jusque là tout fonctionne. ensuite, j'ai mon envoie de mail :
    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
                // Envoi d'email
                $mail_to = $email;
                $mail_subject = "Validation de votre d'inscription";
                $headers  = "From: Mon site.fr\r\n"; 
                $headers .= "Reply-To: monadresse@orange.fr \r\n";
                $headers .= "MIME-Version: 1.0\r\n";
                // $headers .= "Content-Transfer-Encoding: 8bit\r\n";
                $headers .= "Content-type: text/html; charset=utf-8\r\n";
                $mail_body = 'Bonjour,<br\>veuillez cliquer sur  <a href="http://localhost:8888/boutique/activate.php?token='.$token.'&email='.$email.'"> title="activer votre compte"> le lien </a>pour activer votre compte ';
     
                if(mail($mail_to, $mail_subject, $mail_body, $headers)){
                   $_SESSION['message'] = "un message a été envoyé a votre messagerie pour activer votre compte";
                   unset($_POST);
               }else{
                   $_SESSION['erreur'] ="une erreur est survenue lors de l'envoie du fichier. ";
               }
    mais là, j’obtiens le message "une erreur est survenue.... ", qui signifie que l'envoie ne s'est pas fait.
    je n'arrive pas à comprendre pourquoi le mail ne part pas.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Le plus simple est d'utiliser le SMTP de ton fournisseur d'accès et donc de renseigner l'adresse SMTP et le port dans ton php.ini.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    donc, tu rajoute des lignes? comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    Code
    sendmail_path =/usr/sbin/sendmail -t -i -f adresse@orange.fr
    smtp= smtp.orange.fr
    port = 993
    ou alors c'est dans la ligne send-mail :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sendmail_path =/usr/sbin/sendmail -t -i -f smtp.orange.fr

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    smtp et smtp_port.
    Et il ne faut pas activer sendmail_path
    http://php.net/manual/fr/mail.config...n.php#ini.smtp
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    tu veux dire comme cela?:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    Code
    ;sendmail_path =/usr/sbin/sendmail -t -i -f
    smtp= smtp.orange.fr
    smtp_port = 993

  8. #8
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    hum, j'essaie de comprendre la doc.
    ils expliquent pourtant que le send-mail peut être activé (note 6 A AuSTIN)
    For linux you can over-ride the default "From" for the outgoing emails by including in php.ini this line:

    sendmail_path = "/usr/sbin/sendmail -t -i -f fromMe@blah.com"

    The path should work for most linux installations.
    mais je ne comprends pas ce qu'il faut rajouté note -9 :
    On Darwin OS such as OSX (current one: 10.8.3) you need to add a specific command and option to the sendmail_path constant if you have downloaded and installed a mamp with a stack.

  9. #9
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Comme je t'ai dit, c'est largement plus simple d'utiliser le serveur SMTP de ton fournisseur d'accès que d'installer sendmail sur ton mac.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  10. #10
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 448
    Points : 43 092
    Points
    43 092
    Par défaut
    La commande sendmail est dispo sur OS X, mais utilise postfix, on trouve la config à faire sur google mais je rejoint Sabotage.

    Il ne faut pas utiliser le port 993 qui est pour l'imap

    Config pour orange :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SMTP = smtp.orange.fr
    smtp_server = smtp.orange.fr
    smtp_port = 25
    sendmail_from = tonmail@orange.fr
    ou en smtp authentifié :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SMTP = smtp-msa.orange.fr
    smtp_server = smtp-msa.orange.fr
    smtp_port = 587
    auth_username = tonmail@orange.fr
    auth_password = tonmotdepasse
    sendmail_from = tonmail@orange.fr
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  11. #11
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    bon, ok il st plus simple d'utiliser le smtp de mon fournisseur d’accès, mais concrètement je n'arrive pas a comprendre ce que cela signifie. cela veut dire passer par mon site hébergé?

    si je décoche le ; dans php.ini, c'est installer sendmail?
    et les deux cas de chrtophe sont avec sendmail?

  12. #12
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    ais concrètement je n'arrive pas a comprendre ce que cela signifie
    qu'est ce que tu ne comprends pas dans l'exemple donné par chrtophe pour orange ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  13. #13
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    l'exemple qu'il donne passe bien par sendmail non?

  14. #14
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    non.
    La directive "sendmail_from" est le "From" du mail sans rapport avec le programme sendmail.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  15. #15
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    bon, de toute façon, j'ai testé les deux façons, et aucune ne marche. Pourtant, sur le site en ligne il n'y a pas de problèmes.

  16. #16
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Quelle erreur te donne la fonction mail() ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  17. #17
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    Justement, c'est là que se pose le problème, car je n'ai pas de message d'erreur.
    Mon test d'envoie est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(mail($mail_to, $mail_subject, $mail_body, $headers)){
                   $_SESSION['message'] = "un message a été envoyé a votre messagerie pour activer votre compte";
                   unset($_POST);
               }else{
                   $_SESSION['erreur'] ="une erreur est survenue lors de l'envoie du fichier. ";
               }
    Et je n'ai que le retour "une erreur est survenue lors de l'envoie du fichier. Ce qui veut dire que le mail est pas parti.
    Après, je ne sais pas comment faire remonter d'autre erreurs.
    Bon je reviens ce soir.

  18. #18
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que ton serveur est bien configuré pour afficher toutes les erreurs ? mail() renvoie une erreur de type warning.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  19. #19
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    franchement, je n'en sais rien. où est-ce que je peu vérifier ça?

  20. #20
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2013
    Messages : 34
    Points : 10
    Points
    10
    Par défaut
    bon, j'ai beau chercher a droite et a gauche, j'arrive pas a trouver comment configurer mail ou le serveur pour que les erreurs remontent. Et toujours rien. j'ai même essayé d'utiliser mamp pro au cas où...

Discussions similaires

  1. Envoi mail en local avec wamp
    Par sassou409 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 15/12/2011, 18h18
  2. [Mail] Envoyer des mails en local
    Par lucky31 dans le forum Langage
    Réponses: 21
    Dernier message: 17/06/2008, 12h08
  3. Envoyer un mail en VBA avec Words 2003
    Par vijeo dans le forum VBA Word
    Réponses: 9
    Dernier message: 13/03/2008, 15h51
  4. Comment envoyer un mail depuis Word avec un fichier attaché
    Par Heureux-oli dans le forum Contribuez
    Réponses: 0
    Dernier message: 25/08/2007, 11h47
  5. [Wamp] mail en local avec SMTP de cegetel?
    Par Death83 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 8
    Dernier message: 02/03/2006, 21h34

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