SMTP gmail.

Tamoraoul Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   -
Hello World , j'ai un souci
Je voudrais utiliser la fonction mail() de php pour tester l'envoi de mail (c'est évident non ) depuis mon localhost en utilisant un serveur SMTP gmail.
Quelqu'un l'a déjà fait ?!!
Je peux savoir comment ?!!

PS: Je suis sous Win7 so les Linuxiens là...

2 réponses

SypayV Messages postés 6586 Date d'inscription   Statut Contributeur Dernière intervention   449
 
Salut,

Tu peux envoyer des mails en PHP avec Gmail.
Mais pas avec la fonction mail() puisqu'elle ne supporte pas le SSL alors que Gmail n'accepte pas les connexions non sécurisées.

$host = "ssl://smtp.gmail.com";
$port = "465";


Ce que tu peux faire, c'est utiliser des bibliothèques PHP pour envoyer à l'aide d'SSL et c'est très simple.

https://swiftmailer.symfony.com/ depuis https://stackoverflow.com/questions/712392/send-email-using-the-gmail-smtp-server-from-a-php-page
<?php
require_once 'swift/lib/swift_required.php';

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, "ssl")
  ->setUsername('GMAIL_USERNAME')
  ->setPassword('GMAIL_PASSWORD');

$mailer = Swift_Mailer::newInstance($transport);

$message = Swift_Message::newInstance('Test Subject')
  ->setFrom(array('abc@example.com' => 'ABC'))
  ->setTo(array('xyz@test.com'))
  ->setBody('This is a test mail.');

$result = $mailer->send($message);
?>


Il est aussi possible d'utiliser libcurl pour ça maintenant.

Que tu utilises Linux ou non, ça n'aura aucun impact sur les scripts PHP.
0
mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   1 340
 
Bonjour,

C'est possible d'envoyer des mails via SMTP de Google. J'utilise personnellement Zend Framework. Voici un extrait de code:

 $config = array(
                    'ssl'=>'ssl',
                    'port'=>465,
                    'auth' => 'login',
                    'username' => 'votre-adresse-mail@gmail.com',
                    'password' => 'motDePasseAdresseMail');
                $transport = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config);
                    $mail = new Zend_Mail('ISO-8859-1');
                    $mail->setBodyHtml(utf8_decode($body));
//                    $mail->setFrom("contact.sea1@sorties-entre-amis.com");
                    $mail->setFrom("votre-adresse-mail@gmail.com");
                    $mail->setReplyTo("votre-adresse-mail@gmail.com");
                    $mail->addTo($destinataire);
                    $mail->setSubject(stripslashes(utf8_decode($subject)));
                    $error = false;
                    try {
                         $mail->send($transport);
                    } catch(Exception $e) {
                        echo "Exception: {$e->getMessage()}";
                        $error = true;
                    }


Cdlt
0