ホームページ > バックエンド開発 > PHPチュートリアル > PHP は登録メールを送信します。メールを受信すると、そのメールは純粋な HTML テキストになります。

PHP は登録メールを送信します。メールを受信すると、そのメールは純粋な HTML テキストになります。

WBOY
リリース: 2016-06-23 13:54:12
オリジナル
1019 人が閲覧しました


代码如下:

}
else
{
if (isset($_POST['n_register']))
{
$mail = trim($db->EscapeString($_POST[' reg_mail']));
$mail_re = trim($db->EscapeString($_POST['reg_mail_re']));

if (!preg_match("/^[a-zA-Z_\-][\w\.\-_]*[a-zA-Z0-9_\-]@[a-zA-Z0-9] [\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/i", $mail ))
{
$errorMsg = $langBase->get('home-08');
}
elseif ($mail !== $mail_re)
{
$errorMsg = $langBase->get('home-09');
}
elseif ($db->GetNumRows($db->Query("SELECT id FROM `[users]` WHERE `email`='".$mail."' LIMIT 1")) > 0)
{
$errorMsg = $langBase->get('home-10');
}
elseif ($db->GetNumRows($db->Query("SELECT id FROM `[users]` WHERE `IP_regged_with`='".$_SERVER['REMOTE_ADDR']."' LIMIT 1") ) > 0)
{
$errorMsg = $langBase->get('home-11');
}
elseif ($db->GetNumRows($db->Query("SELECT id FROM `temporary` WHERE `playerid`='".$mail."' AND `active`='1' AND `area `='register' AND `time_added`+`expires`>'".time()."' LIMIT 1")) > 0)
{
$errorMsg = $langBase->get('home-111 ');
}
elseif (!isset($_POST['acc_tos']))
{
$errorMsg = $langBase->get('home-12');
}
else
{
$extra = array(
'mail' => $mail,
'enlist' => isset($_GET['e']) ? $db->EscapeString($_GET[ 'e']) : $ref_id
);
$enlist_id = isset($_GET['e']) ? $db->EscapeString($_GET['e']) : $ref_id;

$tempID = substr(sha1(uniqid(rand())), 0, 6);
$db->Query("INSERT INTO `temporary` (`id`, `playerid`, `area`, `expires`, `time_added`, `extra`)VALUES('".$tempID."', '".$mail."','register','3600','".time()."','".serialize($extra)."')");

mail($mail, $admin_config['game_name']['value'].' ?Signup',
'













'、
"返信先: ".$admin_config['game_name']['value']." <".$admin_config['contact_email']['value'].">rn"
"From: ". $admin_config['game_name']['value']." <".$admin_config['contact_email']['value'].">rn"
"MIME バージョン: 1.0rn"
"コンテンツ-type: text/html; charset=iso-8859-1");

$successMsg = $langBase->get('home-24');
}
}
?>


返信ディスカッション (解決策)

HTML テキストを個別に印刷し、解析できるかどうかを確認します。

メールは HTML をサポートしていませんか? ?

メールは HTML をサポートしていませんか? ?


qq/hotmail/126 を試してみましたが、受信したのは純粋な HTML だけでした

メールを送信する関数をあげましょう

function send_mail($to, $subject = 'No subject', $body) {
$loc_host = "mail.server"; , 自由に使用してください
$smtp_acc = "test@163.com" // メールアドレスにメールを送信します
$smtp_pass="111" // パスワード
$smtp_ host="ssl.corp-email.com"; //メールサーバー
from="test@163.com" //送信メールアドレス
$deliver=$smtp_acc;
$headers = "Content-Type: text/plain; charset="gb2312"; :base64";
$lb="rn"; ボディ));}

$smtp = array(

array("EHLO ".$loc_ host.$lb,"220,250","HELO エラー: "),

array("AUTH LOGIN".$lb," 334","AUTH error: "),

array(base64_encode($smtp_acc).$lb,"334","AUTHENTIFICATION error: "),

array (base64_encode($smtp_pass) .$lb,"235" , "認証エラー:");
$smtp[] = array("RCPT TO: <".$to.">".$lb,"250 ","RCPT TO エラー: "); ".$lb,"354","DATA エラー: ");

$smtp[] = array("From: ".$deliver.$lb,""," "); array("宛先: ".$to.$lb,"","");
array ($hdr as $h) {$smtp[] = array($h.$lb,""," ");}
if($bdy) {foreach($bdy) $b) {$smtp[] = array(base64_encode($b.$lb).$lb,"","");}}
配列( "。"。$ lb、 "250"、 "(end)エラー:");        if (!$fp) echo "エラー: 「.$smtp_host.」に接続できません
";
while($result = @fgets($fp, 1024)){if(substr($result,3,1) == " ") { break; }}

$result_str="";

foreach($smtp as $req){

@fputs($fp, $req[0]);

if($req[1]){
while($result = @fget s($fp, 1024)){
if(substr($result,3,1) == " ") { break; }
};
if (!strstr($req[1],substr($result,0,3))){
$result_str.=$req[2].$result."
";




@fclose($fp);
$result_str; を返す
};

?>

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート

« サインアップ


こんにちは




以下をクリックしてステップ 2 に進みます:

'.$config['base_url'].'?side=signup&step=2&v='.$tempID. '


このリンクは '.View::Time(time()+3600, true) まで有効です。'

よろしくお願いします。


'.$admin_config['game_name']['value'].'