ドメインでメール アドレスを構成します。次のスクリプトで、ドメインでme@mydomain.com
新しく作成したメール アドレスと Hotmail/Gmail ID に置き換えます。id@hotmailOrgmail.com
また、次のスクリプトを自分の名前に置き換えYour Name
て、サーバーでテストします。
<?php
$myName = "Your Name";
$myEmailAddressonDomain = "me@mydomain.com";
$myPreferredEmailAddresson = "id@hotmailOrgmail.com";
$mail = $_POST['email_field'];
$clientName = $_POST['name_field'];
$subject = $_POST['subject_field'];
$text = $_POST['message_field'];
$headers = 'From: "$name" <$yourEmailAddressonDomain>'.PHP_EOL.'Reply-To: '.$_POST['mail'].PHP_EOL;
$to = '"$yourname" <$myPreferredEmailAddresson>';
$message = $text.PHP_EOL.PHP_EOL."---".PHP_EOL."From: ".$name." <".$mail.">";
/* Server-side form validations */
$err = "Error with ";
if (!checkLen($name)) {
$err.='Name';
} else if (!checkLen($mail) && !checkEmail($mail)) {
$err.='Email';
} else if (!checkLen($subject)) {
$err.='Subject';
} else if (!checkLen($text)) {
$err.='Message';
}
if (strlen($err)>11) {
echo $err.' field';
exit;
}
/* end validations */
elseif (mail($to, $subject,$message, $headers)) {
echo "<span style='color: #336600'>Your message has been sent.</span>";
} else {
echo "An error occurred, please try again.";
}
function checkLen($str,$len=1)
{
return isset($str) && mb_strlen(strip_tags($str),"utf-8") > $len;
}
function checkEmail($str)
{
return preg_match("/^[\.A-z0-9_\-\+]+[@][A-z0-9_\-]+([.][A-z0-9_\-]+)+[A-z]{1,4}$/", $str);
}
?>
メールは、ドメインのメール アドレス経由で Hotmail/Gmail の受信トレイ (またはスパム以外のメール) フォルダーに届きます。
注:受信したメールの [返信] をクリックすると、クライアントのメール アドレスが表示されます (Reply-To
上記のヘッダーで設定したとおり) 。
適切な変更を加えれば、準備完了です。