როგორ გავაგზავნოთ ელფოსტა PHP სკრიპტიდან SMTP ავთენტიფიკაციის გამოყენებით

Სარჩევი:

როგორ გავაგზავნოთ ელფოსტა PHP სკრიპტიდან SMTP ავთენტიფიკაციის გამოყენებით
როგორ გავაგზავნოთ ელფოსტა PHP სკრიპტიდან SMTP ავთენტიფიკაციის გამოყენებით
Anonim

რა უნდა იცოდე

  • PHP კლასის ვარიანტები: PHPmailer, SwiftMailer, Zend_Mail, XpertMailer, PEAR Mail.
  • PEAR ფოსტა: გაითვალისწინეთ ფოსტის სერვერის სახელი > შეამოწმეთ, რომ PEAR Mail დაინსტალირებულია > შეცვალეთ PHP ფაილი მოცემული მაგალითების გამოყენებით.

ეს სტატია განმარტავს, თუ როგორ გამოვიყენოთ SMTP ავთენტიფიკაცია PEAR Mail-ში PHP mail() ფუნქციით ელფოსტის გასაგზავნად.

ელფოსტის გაგზავნა PHP ფოსტის ფუნქციით

როდესაც იყენებთ PHP mail() ფუნქციას, თქვენ აგზავნით ელ.წერილს პირდაპირ თქვენი ვებ სერვერიდან და არა თქვენი ფოსტის სერვერიდან. თუ თქვენ გაქვთ ფოსტის სერვერი თქვენი ვებ ჰოსტის საშუალებით, ან თუნდაც ფოსტის სერვერი სხვა ჰოსტის საშუალებით, ჩვეულებრივ სჯობს ამის ნაცვლად ფოსტის გაგზავნა.

პრობლემა ის არის, რომ PHP mail() ფუნქცია არ იძლევა რაიმე ჩაშენებულ გზას SMTP-ით ფოსტის გაგზავნისთვის. თუ გსურთ გახსნათ ეს ფუნქცია, დაგჭირდებათ დამატებითი PHP კლასის დაყენება.

აი რამდენიმე ვარიანტი, რომელიც მუშაობს:

  • PHPmailer
  • SwiftMailer
  • Zend_Mail
  • XpertMailer
  • PEAR ფოსტა

ჩვენ გაჩვენებთ, თუ როგორ გამოიყენოთ PEAR Mail, მაგრამ შეგიძლიათ გამოიყენოთ ნებისმიერი კლასი, რომელიც მხარს უჭერს SMTP.

Image
Image

თუ თქვენს ვებ მასპინძელს უკვე აქვს დაინსტალირებული ამ კლასებიდან ერთი ან მეტი, მას ალბათ აქვს გაკვეთილები თქვენს სიტუაციასთან დაკავშირებით. თუ ასეა, განაგრძეთ და გამოიყენეთ კლასი, რომელზეც გაქვთ წვდომა.

გამოიყენეთ ეს მეთოდი მხოლოდ იმ შემთხვევაში, თუ იყენებთ PHP-ს თქვენი საკუთარი ფოსტის ფორმების შესაქმნელად. თუ იყენებთ კონტენტის მართვის სისტემას (CMS), როგორიცაა WordPress, მოძებნეთ დანამატი ან ჩაშენებული ფუნქცია SMTP-ით ფოსტის გასაგზავნად, ვიდრე საკუთარის შექმნას.

როგორ გამოვიყენოთ PEAR SMTP-ით ფოსტის გასაგზავნად

  1. დარწმუნდით, რომ თქვენი დომენი მიმართულია თქვენი ფოსტის სერვერის ჰოსტის Mail Exchange (MX) ჩანაწერებზე და გაითვალისწინეთ თქვენი ფოსტის სერვერის სახელი. მაგალითად, ეს შეიძლება იყოს mail.yourdomain.net ან smtp.yourdomain.net.
  2. შეამოწმეთ, არის თუ არა PEAR Mail უკვე დაინსტალირებული თქვენს ფოსტის სერვერზე.
  3. თუ PEAR Mail არ არის დაინსტალირებული, გაიარეთ კონსულტაცია თქვენს ვებ ფოსტის მასპინძელთან მისი ინსტალაციის კონკრეტული ინსტრუქციებისთვის.
  4. PEAR Mail-ის დაინსტალირების შემდეგ, შეცვალეთ ერთ-ერთი მაგალითი PHP ფაილი შემდეგ განყოფილებებში, რათა მოერგოს თქვენს საჭიროებებს.

მაგალითი PEAR Mail PHP სკრიპტი SMTP ფოსტისთვის

შეგიძლიათ შექმნათ თქვენი საკუთარი სკრიპტი ნულიდან, თუ გსურთ, ან შეცვალოთ შემდეგი მაგალითი თქვენი გემოვნებით. დარწმუნდით, რომ შეიყვანეთ თქვენი ვებ ფოსტის სერვერის სახელი ჰოსტის ცვლადში და გამოიყენეთ თქვენი შესვლის ინფორმაცია თქვენი ვებ ფოსტის ჰოსტის მომხმარებლის სახელისა და პაროლის ველებში.

require_once "Mail.php";

$from="გამომგზავნის სახელი ";

$to="მიმღების სახელი ";

$subject=" თემის ხაზი აქ: ";

$body=" ნებისმიერი შეტყობინება, რომელიც გსურთ ";

$host="yourmailhost.com";

$username="თქვენი მომხმარებლის სახელი ან ელფოსტა"; $პაროლი="თქვენი პაროლი";

$headers=მასივი ('From'=> $from, 'To'=> $to, 'Subject'=> $subject);

$smtp=ფოსტა::factory('smtp', მასივი ('host'=> $host, 'auth'=> true, 'username'=> $username, 'password'=> $password));

$mail=$smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {

echo("

". $mail->getMessage()."

);

} სხვა {echo("

მესიჯი წარმატებით გაიგზავნა!

);}

მაგალითი PEAR Mail PHP სკრიპტი SMTP ავთენტიფიკაციისა და SSL დაშიფვრისთვის

თუ გსურთ გამოიყენოთ SMTP ავთენტიფიკაცია და SSL დაშიფვრა, მოგიწევთ წინა მაგალითში რამდენიმე ცვლილება. თქვენ უნდა მიუთითოთ ჰოსტის ცვლადი თქვენს SSL ფოსტის სერვერზე და ასევე მიუთითოთ პორტის ნომერი, როგორიცაა 25, 465, 587, 2525 ან 8025. დაუკავშირდით თქვენს ვებ ფოსტის მასპინძელს დამატებითი ინფორმაციისთვის, თუ ვერ ხვდებით რომელ პორტს. გამოიყენეთ.

require_once "Mail.php";

$from="გამომგზავნის სახელი ";

$to="მიმღების სახელი ";

$subject=" თემის ხაზი აქ: ";

$body=" ნებისმიერი შეტყობინება, რომელიც გსურთ ";

$host="ssl://yourmailhost.com";

$port="587"; $username="თქვენი მომხმარებლის სახელი ან ელფოსტა";

$პაროლი="თქვენი პაროლი";

$headers=მასივი ('From'=> $from, ' To'=> $to, 'Subject'=> $subject);

$smtp=ფოსტა::factory('smtp', მასივი ('მასპინძელი'=> $host, 'port'=> $port, 'auth'=> true, 'username'=> $username, 'პაროლი'=> $password));

$mail=$smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {

echo ("

". $mail->getMessage()."

);

} სხვა {echo("

მესიჯი წარმატებით გაიგზავნა!

);}

გირჩევთ: