هل هنالك شرح مفصل لكيفية إستخدام PHPMailer؟

نزلت ملفات الكلاس من Github، وتابعت بعض الشروحات على اليوتيوب، ولكن الامر يبدو مستحيل للفهم! أحاول معه منذ البارحة ولكن لا نتيجة جيّدة.

هل يمكنكم مساعدتي في إستخدامه على Localhost؟

أو حتى رفع الصفحة التي أريد انشاءها على استضافة مجانية وضبط إعدادات الكلاس أو أي شيء من هذا القبيل؟

حقًا لا أعلم ما المشكلة، لم اتعامل مع كلاسات من قبل في حياتي.

أريد أن اتعلم كيف يعمل هذا الشيء.

وشكراً :)

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

- التثبيت

 تقوم با تثبيت المكتبة عن طريق composer با أمر composer require phpmailer/phpmailer أو تحمل المكتبة من Github .

- اﻹستدعاء و عمل التعديلات :

<?php

require 'PHPMailerAutoload.php';

$mail = new PHPMailer;

//$mail->SMTPDebug = 3;                               // Enable verbose debug output

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp1.example.com;smtp2.example.com';  // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = 'user@example.com';                 // SMTP username
$mail->Password = 'secret';                           // SMTP password
$mail->SMTPSecure = 'tls';                            // Enable TLS encryption, `ssl` also accepted
$mail->Port = 587; 

الشرح : الأمر الأول isSMTP هو لتجهيز الكلاس للعمل على بروتوكول smtp . الأمر الثاني host هو مزود خدمة ال smtp الذي تريد العمل عليه مثل smtp.gmail.com أو https://www.mailjet.com/fea... ربما يوجد الكثير فقط إبحث في Google . الأمر الثالث أتركه أفتراضي (لا أدري ما الوظيفة با الضبط) الأمر الرابع username أو اسم المسخدم أو الايميل الذي سجلت فيه في مزود خدمة ال smtp . اذا كان Gmail تقوم با كتابة إيميل حسابك في gmail . الأمر الخامس وهو كلمة السر التي سجلت بها في حسابك في مزود خدمة ال smtp . اذا كانت Gmail تقوم با كتابة كلمة سر حسابك في gmail . الأمرين الأخيرين أتركهم إفتراضياً.

- معلومات المرسل و المستقبل و الذي سا يرد على الرسالة

$mail->setFrom('from@example.com', 'Mailer');
$mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
$mail->addAddress('ellen@example.com');               // Name is optional
$mail->addReplyTo('info@example.com', 'Information');

كل شيئ واضح في هذه الأربع اوامر . اما :

$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com'); 

هذأ شرح لهم من موقع :

- الرسالة :

$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
$mail->isHTML(true);                                  // Set email format to HTML

$mail->Subject = 'Here is the subject';
$mail->Body    = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

الأمر الأول هو اذا كنت تريد أن ترسل ملف في الرسالة ليستطيع المستقبل أن يحمله . يمكن أن ترسل أكثر من ملف فقط با كتابة لأمر مجداد .

isHTML إذا كنت تريد أن ترسل رسالة تقوم با دعم أكود ال Html يعني يمكن أن تكتب با html tags عادي h1 p , style ...

Subject وهو عنوان و موضوع الرسالة .

Body وهي الرسالة . و كما قلت يمكن أن تكتب اكود Html فيها .

AltBody أذا كان المستخدم يستخدم ايميل لا يدعم استقبال أكواد Html سا تصله الرسالة المكتوبة في alt body .

- اﻹرسال :

$mail->send()

النهاية !