好吧,嗯,基本上我一直無法編輯我的腳本使用SMTP郵件服務器,而不是使用PHP的郵件繼承人的代碼我一直在使用Linux的 - 使用PHP郵件從SMTP服務器發送
<?php
if (!$_POST) exit;
$email = $_POST['email'];
//$error[] = preg_match('/\b[A-Z0-9._%-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}\b/i', $_POST['email']) ? '' : 'INVALID EMAIL ADDRESS';
if (!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*" . "@" . "([a-z0-9]+([\.-][a-z0-9]+)*)+" . "\\.[a-z]{2,}" . "$", $email)) {
$error .= "Invalid email address entered";
$errors = 1;
}
if ($errors == 1)
echo $error;
else {
$values = array('name', 'email', 'message');
$required = array('name', 'email', 'message');
$your_email = "[email protected]";
$email_subject = "New Message: " . $_POST['subject'];
$email_content = "new message:\n";
foreach ($values as $key => $value) {
if (in_array($value, $required)) {
if ($key != 'subject') {
if (empty($_POST[$value])) {
echo 'PLEASE FILL IN REQUIRED FIELDS';
exit;
}
}
$email_content .= $value . ': ' . $_POST[$value] . "\n";
}
}
if (@mail($your_email, $email_subject, $email_content)) {
echo 'Message sent!';
} else {
echo 'ERROR!';
}
} ?>
伊夫已經檢查了,但我的PHP知識是可怕的,所以我有點需要我的手通過這個
挑剔:你還在使用一個smtp服務器......'mail()'本身不做任何傳遞。它只是將電子郵件移交給一個smtp服務器。你使用的任何其他庫都會做同樣的事情,只比超級糟糕的'mail()'更好。另外,'ereg'已被棄用一段時間。你不應該在任何新的代碼中使用它。 –
你的問題比所有這些都有根本的不同嗎? http://stackoverflow.com/search?q=%5Bphp%5D+%5Bmail%5D+smtp。我確定有人在某處設置了php和smtp並將其發佈到SO。 –
可能是這樣,但不是以同樣的方式,我用我的發送郵件,因爲所有的代碼通常是不同的,導致我的PHP知識很爛我不知道如何將其更改爲我的代碼 – user2895412