-1

私は PHP の経験があまりありません。フォーム ジェネレーターを使用してこのフォームを作成しました。問題は、フォームが何百もの空のメールを送信していることです。誰でも私がそれを修正するのを手伝ってもらえますか? PHPコードは次のとおりです。

 <?php

$where_form_is="http://".$_SERVER['SERVER_NAME'].strrev(strstr(strrev($_SERVER['PHP_SELF']),"/"));

mail("blah@blah.com","MESSAGE: website","

Someone has submitted a message from your website!  Huzzah!

--------------------------------------------------------------------------------

CONTACT INFO:
" . $_POST['field_1'] . "
" . $_POST['field_2'] . " 

MESSAGE:
" . $_POST['field_3'] . " 

--------------------------------------------------------------------------------

Also you're a stud.

");

header("Refresh: 0;url=http://www.blah.com/thanks.html");

?>
4

1 に答える 1

0

誰かが実際にPOSTデータを編集した (つまり、実際にフォームを使用した) ことを確認できれば、問題ありません。

<?php
    $where_form_is="http://".$_SERVER['SERVER_NAME'].strrev(strstr(strrev($_SERVER['PHP_SELF']),"/"));

        if (!$_POST['field_1'] || !$_POST['field_2'] || !$_POST['field_3']) {
            header("Location: $where_form_is");
            exit;
        }

    mail("blah@blah.com","MESSAGE: website","Someone has submitted a message from your website!  Huzzah!
    CONTACT INFO:
    " . $_POST['field_1'] . "
    " . $_POST['field_2'] . " 

    MESSAGE:
    " . $_POST['field_3'] . " 
    Also you're a stud.");

    header("Refresh: 0;url=http://www.blah.com/thanks.html");
    exit;
?>
于 2012-09-30T05:02:19.360 に答える