2014-09-07 1 views
0

Я использую swiftmailer- um ... позвольте мне перефразировать - пытаясь использовать swiftmailer! Я нахожусь на MAC OSX, используя gmail с моим почтовым клиентом, яблочную почту. Я развиваюсь в местной среде, поэтому ничего не живет. Я должен также упомянуть, что все это в стеке MAMP (Mac, Apache, MySQL, php). Быстрая почтовая библиотека находится в htdocs (моя корневая папка).Использование Swiftmailer в локальном dev/mac с gmail, не работает

Я пробовал все варианты, которые я видел в Интернете, с моим кодом swiftmailer и настройкой портов с моим почтовым клиентом, но безрезультатно. Я не получаю никаких ошибок в моем журнале, даже несмотря на то, что они включены, поэтому мне нечего делать.

У меня есть html-форма, где пользователь помещает свою электронную почту. После отправки эта информация должна быть отправлена ​​на скрипт быстрой почты (email.php), а затем пользователю должно быть отправлено сообщение. Вы видите этот процесс все время, когда подписываетесь на вещи, кроме как со мной это не регистрация.

Ниже я расскажу часть html-страницы ниже, а затем скрипт swiftmailer.

<div class="col-md-4"> 
<div class="div1"> 
<h2>Step 6</h2><p>Email: REQUIRED </p> 
<input type="text" id="email" name="email" class="form-control" placeholder="[email protected]"></br> 
</div> 
</div> 
<div class="row"> 
<div class="col-md-3"> 
</div> 
<div class="col-md-4"> 
<div class="submit"> 
<form action="email.php"> 
<button type="submit" class="btn btn-primary btn-lg btn-block" name="submit" >Submit</button> 
</form> 

И теперь код SwiftMailer

<?php 

require_once 'lib/swift_required.php'; 

//Pass it as a parameter when you create the message 
$message = Swift_Message::newInstance(); 
$message->setSubject('My subject'); 
$message->setFrom(array('[email protected]' => 'No Reply')); 
$message->setTo(array('[email protected]' => 'My Name')); 

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl')->setUsername('[email protected]')->setPassword('password'); 
//Supposed to allow local domain sending to work from what I read 
$transport->setLocalDomain('[127.0.0.1]'); 
$mailer = Swift_Mailer::newInstance($transporter); 
//Send the message 
$result = $mailer->send($message); 

?> 

Любая помощь будет чрезвычайно ценным в этой точке. Большое спасибо заранее! -Dan

ответ

0

Прежде всего, ваш HTML и ваш PHP, похоже, не интегрированы для совместной работы, поэтому я предполагаю, что вы просто проверяете свой PHP-файл с помощью тестовых адресов электронной почты. Другими словами, вам не нужно отображать форму HMTL в вашем вопросе.

Во-вторых, ваш код не будет работать независимо от того, что, потому что есть ошибка здесь:

$mailer = Swift_Mailer::newInstance($transporter); 

Ваше имя объекта $transport не $transporter.

Если у вас нет предупреждений, уведомлений и сообщений об ошибках при запуске скрипта, включите их, вставив этот код в начало файла PHP. Это переопределит все настройки, которые у вас есть в файле php.ini.

error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE); 

Подробнее об ошибке отчетов здесь: http://php.net/manual/en/function.error-reporting.php

Также читайте внимательно Swiftmailer doc on sending emails и проверить, что установка PHP имеет необходимые функции, доступные.

Сообщения об ошибках, если таковые имеются, должны указывать в правильном направлении. Если вы не можете их устранить, вернитесь сюда с выводами своих ошибок, предупреждений и уведомлений. Надеюсь это поможет.

+0

получил его на работу! Спасибо, босс. – Daniel