2016-05-06 3 views
0

У меня очень простой CSS-сайт CSS и javaScript на моем локальном хосте. Я хочу сделать очень простую форму контакта. Обычно я использую WordPress через плагин для достижения этого и никогда не создавал вручную электронные письма на простом веб-сайте.phpMailer - localhost в настоящее время не может обрабатывать этот запрос.

Я загрузил файл class.phpmailper.php с: https://github.com/PHPMailer/PHPMailer/blob/master/class.phpmailer.php и разместил его в корне моего сайта.

На моей контактной формы я простой

if(isset($_POST['submit'])){ 

} 

и попытаться отправить по электронной почте. Я поставил в одних и тех же деталей SMTP, которые я использую на моих WordPress сайтов, однако, когда я нажимаю отправить страница просто говорит:

Страница имя-сайт не работает

envirofuel-редизайн является в настоящее время не удается обработать этот запрос.

HTTP ERROR 500

Это код, который выполняется, когда форма была отправлена:

if(isset($_POST['submit'])){ 

    require_once('class.phpmailer.php'); 

    $subject = 'test'; 
    $body_of_your_email = 'hello test body'; 
    $mail = new PHPMailer(); 

    $mail->IsSMTP();      // telling the class to use SMTP 

    $mail->SMTPDebug = 0; 
    // 0 = no output, 1 = errors and messages, 2 = messages only. 

    $mail->SMTPAuth = true;    // enable SMTP authentication 
    $mail->SMTPSecure = "";    // sets the prefix to the servier 
    $mail->Host = "I PUT MY SMTP HOST HERE";  // sets Gmail as the SMTP server 
    $mail->Port = 587;      // set the SMTP port for the GMAIL 

    $mail->Username = "I PUT MY USERNAME HERE"; // Gmail username 
    $mail->Password = "I PUT MY PASSWORD HERE";  // Gmail password 

    $mail->CharSet = 'windows-1250'; 
    $mail->SetFrom ('[email protected]', 'Example.com Information'); 
    $mail->AddBCC ('[email protected]', 'Example.com Sales Dep.'); 
    $mail->Subject = $subject; 
    $mail->ContentType = 'text/plain'; 
    $mail->IsHTML(false); 

    $mail->Body = $body_of_your_email; 
    // you may also use $mail->Body = file_get_contents('your_mail_template.html'); 

    $mail->AddAddress ('I PUT MY PERSONAL EMAIL HERE', 'Matthew'); 
    // you may also use this format $mail->AddAddress ($recipient); 

    if(!$mail->Send()) 
    { 
     $error_message = "Mailer Error: " . $mail->ErrorInfo; 
    } else 
    { 
     $error_message = "Successfully sent!"; 
    } 

} 

Есть идеи?

+1

ERROR 500 - это ошибка на уровне сервера. Что говорят журналы? У вас есть какой-нибудь инструмент для отладки? – Webomatik

+0

Вы основали свой код на устаревшем примере PHPMailer. Обновите его. Ошибка, которую вы получаете (которая будет в ваших журналах веб-сервера), вероятно, вы не загрузили класс SMTP. – Synchro

ответ

0

Если ваши веб-сайты Wordpress могут отправлять электронные письма, настройки сервера электронной почты должны быть ОК.

Вам может понадобиться настроить PHP для использования SMTP, попробуйте добавить, прежде всего:

ini_set('SMTP','localhost'); 
ini_set('sendmail_from', '[email protected]_domain.com'); 

Если это работает, то вы можете изменить ваш php.ini для того, чтобы сделать эти настройки глобальной.

[mail function] 
SMTP = localhost 
sendmail_from = [email protected]_domain.com 
Смежные вопросы