我有一个相对基本的电子邮件表单放在一起,我打算使用邮件mime通过电子邮件发送给收件人。当表格显示在自己的页面上,即联系页面时,这种方法对我来说很有用。
这里我使用jquery来显示一个隐藏的div,其中包含来自主页的表单。问题是,虽然我的验证通过了电子邮件,但是没有发送。我为什么不知所措,希望有人可以帮助我!
相关的php如下:
$path = get_include_path() . PATH_SEPARATOR . '/home/host/php';
set_include_path($path);
include('Mail.php');
include('Mail/mime.php');
$recipient_email = 'somebody@somewhere.com';
//validations are here
//send the email
$name = $_POST['name'];
$visitor_email = $_POST['from'];
$subject = $_POST['subject'];
$user_message = $_POST['message'];
$to = $recipient_email;
$from = $visitor_email;
$text = "From: $name \n Subject: $subject \n Message $user_message";
$message = new Mail_mime();
$message->setTXTBody($text);
$body = $message->get();
$extraheaders = array("From"=>$name, "To"=>$recipient_email, "Subject"=>$subject, "Reply-To"=>$visitor_email);
$headers = $message->headers($extraheaders);
$mail = Mail::factory("mail");
$mail->send($to, $headers, $body);
echo "Success";
显示表单的jquery如下所示:
jQuery.fn.fadeToggle = function(speed, easing, callback) {
return this.animate({opacity: 'toggle'}, speed, easing, callback);
};
$(document).ready(function() {
$('#tellfriend').hide();
$('li a.email, #tellfriend a.close').click(function() {
$("#tellfriend").fadeToggle('slow');
});
});
我的一个想法(我将试验它)是因为当点击链接以显示表单时,链接会附加到URL,因此它可能会影响我的表单操作?不确定..感谢任何帮助!
答案 0 :(得分:0)
我能够通过我最终在Stack Overflow HERE上找到的上一个问题来解决我的问题
事实证明,我必须指定一个外发邮件服务器才能发送表单。尽管如此,奇怪的是我过去一直在工作,我不需要遵循这些步骤。