0

siteurl.com/help/contact に連絡先フォームがあります。送信ボタンを押すと、次のページに送信されます: siteurl.com/ext/contact/contactpost.php - これにより、フォームが電子メールに送信されます。

ただし、mail() 関数の後、ヘッダーを直接使用して siteurl.com/help/contact に送り返し、siteurl.com/ext/contact/contactpost.php から来た場合にアラートを表示するようにします。

私は現在これを持っています(URLは変更されるため、$_SERVER ['SERVER_NAME']を使用します):

$url = "http://". $_SERVER['SERVER_NAME'] . "/ext/contact/contactpost.php";
if( $_SERVER['HTTP_REFERER'] == $url ){

    // The user was referred by the correct page, so you're good to go
    alert('Thanks, your message was submitted!');

}

$url をエコーすると、正しい siteurl.com/ext/contact/contactpost.php が表示されますが、アラートは表示されません!

何か助けはありますか?

4

1 に答える 1

1

Alert は PHP 関数ではなく、JavaScript 関数です (サーバー側ではなくクライアント側)。

修正コード:

$url = "http://". $_SERVER['SERVER_NAME'] . "/ext/contact/contactpost.php";
if( $_SERVER['HTTP_REFERER'] == $url ){

    // The user was referred by the correct page, so you're good to go
    echo "<script language='javascript' type='text/javascript'>";
     echo "alert('Thanks, your message was submitted!');";
    echo "</script>";


}
于 2013-01-28T18:38:16.717 に答える