0

テキストボックスにテキストを入力すると、PHPに正しく転送されません。PHPは入力をnullとして読み取りますが、実際にはそこにテキストがあります。

PHPコード。

    //Two Email Lines
$email_to = "contact@mywebsite.com";
$email_subject = "AUTO: REQUEST";

//Set equal to email form textbox
$email_form = $_POST['email_text'];


$email_message = "Email: " . $email_form . "";

//Create email headers
@mail($email_to, $email_subject,$email_message,$headers);

フォームのHTMLコード

<div id="form">

<form method="post" action="Email_Form_Script.php" enctype="text/plain" onsubmit="window.open('FormPopUp.html','popup','width=500,height=500,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0');" >
    <div>
        <input type="text" class="text" name="e3text" id="emailForm" value="Enter your e-mail address" onfocus="if(this.value=='Enter your e-mail address') { this.value = '' }" onblur="if(this.value=='') { this.value = 'Enter your e-mail address' }" />
        <input type="hidden" value="" name="email2"/>
        <input type="hidden" name="loc" value="en_US"/>
        <input type="submit" class="submit" value=""/></div>
</form>
</div>

なぜそれが機能しないのかについて本当に混乱しています。「Eメール:」(Eメールの後にテキストはありません)とだけ書かれた空のEメールを受け取り続けます。

4

4 に答える 4

2

この線:

$email_form = $_POST['email_text'];

nameあなたの場合の形式のテキストと一致する必要があるname="e3text"ので、以下を使用する必要があります。

$email_form = $_POST['e3text'];
于 2012-09-08T16:49:24.177 に答える
0

PHPコードでこれを試してください

$email_form = $_POST['e3text'];

「e3text」はテキストボックスの名前なので、phpではこの名前を使用します

于 2012-09-08T16:49:42.233 に答える
0

フォームの送信ボタンを押すと、値は次のように渡されます。

name of the input field = value of the input field

あなたのフィールドは名前ですe3text-スクリプトでそのようなフィールドを参照してください$_POST['e3text']

于 2012-09-08T16:50:11.257 に答える
0

email_textこれは、フォームに、PHPコードで参照されているという名前の入力要素が実際には含まれていないためです。HTMLフォームコードを少なくともこのように構造化するか、PHPコードをrequireに変更する必要があります$_POST['e3text']

<div id="form">
    <form method="post" action="Email_Form_Script.php" enctype="text/plain" onsubmit="window.open('FormPopUp.html','popup','width=500,height=500,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0');" >
        <div>
            <input type="text" class="text" name="email_text" id="emailForm" value="Enter your e-mail address" onfocus="if(this.value=='Enter your e-mail address') { this.value = '' }" onblur="if(this.value=='') { this.value = 'Enter your e-mail address' }" />
            <input type="hidden" value="" name="email2"/>
            <input type="hidden" name="loc" value="en_US"/><input type="submit" class="submit" value="" />
        </div>
    </form>
</div>
于 2012-09-08T16:50:50.117 に答える