2015-12-31 4 views
-3

У меня есть проблема с отправкой по электронной почте из формы, так что я искал ответы на некоторые вопросы в месте, и я увидел, что кто-то этот пост: https://github.com/PHPMailer/PHPMailerИспользование Php Mailer?

Но я не понимаю, как использовать его? что я должен положить в папку своего сайта? а что мне делать? снова используйте тег mail?

Что я должен делать, например, просто нормальная форма с:

Name :, Email :, Материалы :, Отправить

И тогда он будет посылать на мою электронную почту.

ответ

1

Довольно образом, первый продлить PHPMailer и установить значения по умолчанию для вашего сайта:

require("class.phpmailer.php"); 

class my_phpmailer extends phpmailer { 
    // Set default variables for all new objects 
    var $From  = "[email protected]"; 
    var $FromName = "Mailer"; 
    var $Host  = "smtp1.example.com;smtp2.example.com"; 
    var $Mailer = "smtp";       // Alternative to IsSMTP() 
    var $WordWrap = 75; 

    // Replace the default error_handler 
    function error_handler($msg) { 
     print("My Site Error"); 
     print("Description:"); 
     printf("%s", $msg); 
     exit; 
    } 

    // Create an additional function 
    function do_something($something) { 
     // Place your new code here 
    } 
} 

Затем включить вышеупомянутый сценарий, где это необходимо (в данном примере он назван mail.inc.php) и использовать вновь созданный my_phpmailer класса где-то на ваш сайт, скажем validate.php:

<?php 
if(isset($_POST["name"])) 
{ 
require("mail.inc.php");//or the name of the first script 

// Instantiate your new class 
$mail = new my_phpmailer; 

// Now you only need to add the necessary stuff 
$mail->AddAddress($_POST["email"], $_POST["name"]); 
$mail->Subject = $_POST["subject"]; 
$mail->Body = $_POST["message"]; 

if(!$mail->Send()) 
{ 
    echo "There was an error sending the message"; 
    exit; 
} 

echo "Message was sent successfully"; 
} 
else{ 
echo "No post values found!"; 
} 
?> 

Вот образец формы:

<form name="sendmail" action="validate.php" method="post"> 
    <input name="name" type="text" required> 
    <input name="email" type="email" required> 
    <input name="subject" type="text" required> 
    <textarea name="message" required></textarea> 
    <button type="submit">Send Mail</button> 
</form> 
+0

Это расширенный ответ. (y) – Grumpy

+0

Спасибо, но я немного смущен ... У меня нормальная форма, содержащая поле имени, адрес электронной почты и сообщение. Все, что я хочу, когда кто-то нажимает кнопку отправки, он отправит на мой адрес электронной почты, и я до сих пор не понимаю, как это сделать с примерами ... не могли бы вы снова объяснить это мне? – WebO

+0

@Roei Пожалуйста, проверьте обновленное решение. Если у вас есть какие-либо сомнения, напишите комментарий. – Manikiran