0

ウェブサイトにニュースレターの購読フォームがあり、それを次のページに移動させたい

ユーザーがサインアップしたことを確認します。現時点では、ページを更新して与えるだけです

フォームボックスがあった場所にちょっとしたメッセージ。それをテストした後、それはまた気にしません

メールアドレスを間違って入力したなど。この情報をチェックして、

正しいメールアドレスを送信します。現時点であるコードは

<?php

// get vars
$email_address = strtolower(trim($_REQUEST['email_address']));

if((strlen($email_address) > 0) && (strpos($email_address, "@")))
{
    // add to db
    $newsletterQry = db_query("SELECT * FROM newsletter_subscribers WHERE email='" . mysql_real_escape_string($email_address) . "'");
    if(db_num_rows($newsletterQry) == 0)
    {
        // add
        db_query("INSERT INTO newsletter_subscribers (email, created) VALUES ('" . mysql_real_escape_string($email_address) . "', NOW())");
    }
}

// return back to the index page with confirmation
header("location: ".$_SERVER["HTTP_REFERER"]."?nlMsg=".urlencode("You've been added to the site newsletter."));
exit;
?>
4

1 に答える 1

0

PHPで電子メールを検証する方法に関するソリューションを参照してください。RegExまたはPHPの組み込み関数のいずれかを使用して電子メールアドレスをサニタイズしたいとしfilter_var()ます。

<?php
$email_address = strtolower(trim($_REQUEST['email_address']));
if (filter_var($email_address, FILTER_VALIDATE_EMAIL)) {
    // This email address is valid insert into newsletter 
}
于 2013-03-19T03:10:00.767 に答える