In PHP on Microsoft Windows you have to simply configure two parameters to enable sending mails through SMTP server. En PHP sous Microsoft Windows, vous devez simplement configurer deux paramètres afin de permettre l'envoi de mails par SMTP serveur. In Unix / Linux it is slightly more complicated. Sur Unix / Linux il est un peu plus compliqué. The solution, however, is much more powerful and works also on Windows. La solution, toutefois, est beaucoup plus puissant et fonctionne également sous Windows. Let’s first start with Windows. Supposons tout d'abord commencer par Windows.

In Microsoft Windows PHP installation you just have to change two variables in php.ini: Dans Microsoft Windows installation de PHP vous suffit de modifier deux variables dans le fichier php.ini:

SMTP = smtp.server.com SMTP = smtp.server.com
smtp_port = 25 smtp_port = 25

Replace smtp.server.com with your SMTP server name and 25 with your SMTP server port (normally 25). Remplacer smtp.server.com avec votre nom du serveur SMTP et 25 avec votre port du serveur SMTP (normalement 25).

You can also set the default sender information in Windows: Vous pouvez également définir les coordonnées de l'expéditeur par défaut dans Windows:
sendmail_from = me@example.com sendmail_from = me@example.com

On Linux / Unix PHP relies on sendmail . Sous Linux / Unix PHP repose sur sendmail. You can specify the sendmail path here: Vous pouvez spécifier le chemin sendmail ici:
sendmail_path = /usr/sbin/sendmail -t -i sendmail_path = / usr / sbin / sendmail-t-i

Unfortunately this doesn’t work too well if your SMTP server is configured on a different machine or you are not using sendmail. Malheureusement cela ne fonctionne pas trop bien si votre serveur SMTP est configuré sur une machine différente ou que vous n'utilisez pas sendmail.

Phpmailer Fortunately there is a much better solution in Heureusement, il existe une bien meilleure solution PHPMailer Phpmailer . The default mail capability provided by mail() function in PHP is very limited. La capacité de messagerie par défaut fourni par la poste () en PHP est très limitée. PHPMailer is a full fledged mail API which can be used to do any kind of mailing tasks. Phpmailer est un véritable mail API qui peut être utilisé pour faire quelque nature que ce soit tâches d'expédition.

Features of PHPMailer Caractéristiques de phpmailer

  1. Can send emails with multiple TOs, CCs, BCCs and REPLY-TOs Puis envoyer des emails avec de multiples opérateurs, CC, BCC et Reply-OT
  2. Redundant SMTP servers Redondante serveurs SMTP
  3. Multipart/alternative emails for mail clients that do not read HTML email Multipart / alternative e-mails pour les clients de messagerie qui ne lisent pas e-mail HTML
  4. Support for 8bit, base64, binary, and quoted-printable encoding Soutien à 8bit, base64, binaire, et quoted-printable encodage
  5. Uses the same methods as the very popular AspEmail active server (COM) component Utilise les mêmes méthodes que le très populaire AspEmail serveur actif (COM) composant
  6. SMTP authentication L'authentification SMTP
  7. Word wrap Retour à la ligne automatique
  8. Address reset functions Adresse fonctions de réinitialisation
  9. HTML email E-mail HTML
  10. Tested on multiple SMTP servers: Sendmail, qmail, Postfix, Imail, Exchange, etc Testé sur plusieurs serveurs SMTP: Sendmail, Qmail, Postfix, iMail, Exchange, etc
  11. Works on any platform Fonctionne sur n'importe quelle plate-forme
  12. Flexible debugging Flexible de débogage
  13. Custom mail headers Custom-têtes des messages
  14. Multiple fs, string, and binary attachments (those from database, string, etc) De multiples fs, string, et les pièces jointes binaires (ceux de la base de données, string, etc)
  15. Embedded image support Image intégrée de soutien

How to use PHPMailer Comment utiliser phpmailer
To use PHPMailer you need to first Pour utiliser phpmailer vous devez d'abord download the files télécharger les fichiers and save the relevant files (upload) on your server. et mettre les fichiers (upload) sur votre serveur.

You need to upload class.phpmailer.php , class.smtp.php (for SMTP support) and language/phpmailer.lang-en.php . Vous devez transférer class.phpmailer.php, class.smtp.php (pour SMTP soutien) et la langue / phpmailer.lang-fr.php. You should download the lang file corresponding to the language of your blog. Vous devez télécharger le fichier de langue correspondant à la langue de votre blog. For my english language sites I use language/phpmailer.lang- en .php , where en is the language code. Pour ma langue Anglais-je utiliser les sites language/phpmailer.lang- fr. Php,en est le code de langue.

In your PHP file include class.phpmailer.php as follows: Dans votre fichier PHP inclure class.phpmailer.php comme suit:

 if(!class_exists('PHPMailer')) {     require(BASEPATH . '/class.phpmailer.php'); } if (! class_exists ( 'phpmailer')) (require (Basepath ". / class.phpmailer.php ');) 

Replace BASEPATH with the actual path of class-phpmailer.php file. Remplacer Basepath avec le chemin réel de la classe-phpmailer.php fichier. You may also define BASEPATH to achieve the same result (preferred). Vous mai également définir Basepath à atteindre le même résultat (de préférence).

Note: This check ensures only one copy of the class is loaded. Note: Ce contrôle garantit que seules une copie de la classe est chargée. This in turn loads other required classes. Cela, à son tour des charges autres classes nécessaires.

Now you can send a mail using any SMTP server. Maintenant, vous pouvez envoyer un mail en utilisant n'importe quel serveur SMTP. Here is a simple example: Voici un exemple simple:

 $mail = new PHPMailer();  $mail->From     = $senderemail; $mail->FromName = $sendername; $mail->AddAddress($receiveremail, $receivername); // Fill in Username and Password for servers requiring authentication $mail->Username = $smtp_username; $mail->Password = $smtp_password;  // SMTP server name $mail->Host     = $smtp_server; $mail->Mailer   = "smtp";  $mail->Subject = $mail_subject; $mail->Body    = $mail_body;  if(!$mail->Send()) $results = 'Error message'; else $results = 'Success message'; $ mail = new phpmailer (); $ mail-> From = $ senderemail $ mail-> FromName = $ sendername $ mail-> AddAddress ($ receiveremail, receivername $) / / Remplir d'utilisateur et votre mot de passe pour les serveurs nécessitant une authentification $ mail-> Nom d'utilisateur = $ smtp_username $ mail-> Mot de passe = $ smtp_password / / nom du serveur SMTP $ mail-> host = $ smtp_server $ mail-> Mailer = "smtp"; $ mail-> Subject = $ mail_subject $ Mail-> Body = $ mail_body; if (! $ Mail-> Send ()) $ results = 'Message d'erreur'; else $ results = "Réussite message '; 

You can read the Vous pouvez lire les documentation la documentation , advanced example avancée exemple or the ou le tutorial didacticiel if you need further help. si vous avez besoin d'aide.