所以我只是将mailgun发送到一个网站,用于发送联系表单信息。 这在某些时候有效,但是当我按下发送时,Chrome左下角的消息“等待 url ...”,主要是页面挂起。
服务器上没有ssl,因此奇怪的mailgun构造函数。
这是我的php,它放在我网站的正文中。
<?php
require 'mailgun-php/vendor/autoload.php';
use Mailgun\Mailgun;
if(isset($_POST['register'])){
$message = "Contact Form.\n\n".
"Name: ".$_POST['name']."\n".
"Email: ".$_POST['email']."\n".
"Message: ".$_POST['message']."\n";
$mg = new Mailgun(*my key*, "api.mailgun.net", "v2", false);
$domain = *my domain*;
$mg->sendMessage($domain, array(
'from'=>'Contact Form <build@<url>>',
'to'=> *email*,
'subject' => ' Contact Form',
'text' => $message
)
);
header('Location: ?sent=1');
}
?>
这是表格代码:
<form method="post" action="index.php">
<div class="row 50%">
<div class="6u 12u$(mobile)"><input type="text" class="text" name="name" placeholder="Name" /></div>
<div class="6u$ 12u$(mobile)"><input type="text" class="text" name="email" placeholder="Email" /></div>
<div class="12u$">
<textarea name="message" placeholder="Message"></textarea>
</div>
<div class="12u$">
<button class="button" type="submit" name="register"> Send Message </button>
</div>
</div>
</form>
我没有在收到电子邮件时收到任何错误。按下提交按钮后,页面最终将重新加载,但未应用标题重定向(我假设这是因为电子邮件未成功发送)。
php错误日志也没有出现任何问题。
由于
答案 0 :(得分:0)
也许这是一个(很晚)的答案,但我遇到了同样的问题。我发现Mailgun拥有IP地址白名单,因此,如果您尚未在其中添加公用IP地址,则将永远无法建立与Mailgun API的连接。 在撰写此答案时,白名单位于以下链接:https://app.mailgun.com/app/account/security/api_keys