我有一个简单的表单来发送电子邮件PHP系统对我来说很好,因为我的webmail来自One,他们支持服务器端电子邮件脚本。但问题是Hotmail没有,因此我的表单不适用于不支持One支持的电子邮件。我已经通过互联网查找了完美的解决方案,但PHP并不是我喜欢使用的东西,因此玩它不是我的一杯茶。如果您想知道我的PHP邮件文件夹目前是什么样的,请看一下:
<?php
$name = $_POST['name'];
$lastname = $_POST['lastname'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$workshop = $_POST['workshop'];
$location = $_POST['location'];
$information = $_POST['information'];
$contact = $_POST['contact'];
if( !isset($_POST['name'])) { die("No Direct Access"); }
$spam = $_POST['username'];
if($spam) {
die("error: Spam");
} else {
}
$formcontent=" Naam: $name \n\n Achternaam: $lastname \n\n Email: $email \n\n Telefoon: $phone \n\n Workshop: $workshop \n\n Locatie: $location \n\n Contacten via: $contact \n\n Extra informatie: $information";
$recipient = "Something@Something.com";
$subject = "Workshop klant";
$mailheader = "From: ".$_POST["email"]."\r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
header('Location: verzonden.html');
正如您所看到的,这是非常基本的东西。这就是为什么我来到人们比我更了解这个的地方。
感谢您抽出宝贵时间。
答案 0 :(得分:0)
不打算在其他解决方案上支持Mailgun。这就是我用代码方便的说明。对于全世界所困扰的所有垃圾邮件和恶意软件问题,发送邮件并非易事。在第一次暗示任何粗略的提示时,邮件将被主要提供商阻止。如果您需要从网站发送邮件,您应该在某处创建一个帐户来专门发送邮件。在网上搜索“批量邮件发送”以查看更多选项。许多是免费的轻度使用...有些是免费的甚至相当重要的用途。
如果使用Mailgun,则将其PHP下载到网络服务器中的文件夹。然后有这样的事情:
在某个配置文件中:
// Mailgun connection info.
$GLOBALS['MAILGUN_API_KEY'] = '<your key from MailGun>';
$GLOBALS['MAILGUN_MAIL_DOMAIN'] = '<Your Domain>';
发送邮件的功能:
<?php
require './mailgun-php/vendor/autoload.php';
use Mailgun\Mailgun;
function mailgunSend($mailFrom, $mailTo, $mailSubject, $mailText, $mailHTML = null, $mailCC = null, $mailBCC = null, $mailAttachmentsArray = null) {
$sendArray['from'] = $mailFrom;
$sendArray['to'] = $mailTo;
$sendArray['subject'] = $mailSubject;
$sendArray['text'] = $mailText;
if ($mailHTML != null) {
$sendArray['html'] = $mailHTML;
}
if ($mailCC != null) {
$sendArray['cc'] = $mailCC;
}
if ($mailBCC != null) {
$sendArray['bcc'] = $mailBCC;
}
if ($mailAttachmentsArray != null) {
$sendArray['attachment'] = $mailAttachmentsArray;
}
$mg = new Mailgun($GLOBALS['MAILGUN_API_KEY']);
$mg->sendMessage($GLOBALS['MAILGUN_MAIL_DOMAIN'], $sendArray);
}
最后,发送电子邮件,例如:
mailgunSend($GLOBALS['VERIFICATION_EMAIL_FROM'], $_SESSION["userEmail"],
$GLOBALS['VERIFICATION_EMAIL_SUBJECT'], $mailBodyText, $mailBodyHTML);
您当然需要将表单数据组合到邮件正文中。希望有所帮助。