简体   繁体   中英

PHP $_POST always empty

Stumped, var-dump($_POST) always returns array[0] {} PHP mail though always succeeds. Variables in html side are what I expect when viewed in the debugger. Fails with both register_globals on and off.

 <!-- html code (in contact.php) -->
<form name="hhcform" method="POST" action="sendmail.php" onsubmit="return ValidateForm();"      enctype="text/plain"> 
First Name: <input type="text" name="firstname" value="" size="25">
<span id="firstnameErr" style="color:red">*</span>
<br><br>
Last Name: <input type="text" name="lastname" value="" size="25">
<span id="lastnameErr" style="color:red">*</span>
<br><br>
Email Address: <input type="text" name="emailaddress" value="" size="25">
<span id="emailErr" style="color:red">*</span>
<br><br>
Select a Topic: <span id="topicErr" style="color:red">*</span><br>
    <div class="radio-block">
        <input type="radio" name="topic" value="Insurance"> Accepted Insurance<br><br>
        <input type="radio" name="topic" value="Hours"> Office Hours<br><br>
        <input type="radio" name="topic" value="Refills"> Prescription Refills<br><br>
        <input type="radio" name="topic" value="Patients"> Accepting New Patients<br><br>
        <input type="radio" name="topic" value="Website"> Website Issues<br><br>
        <input type="radio" name="topic" value="Other"> Other<br><br>
    </div>
Comments: <span id="commentErr" style="color:red">*</span><br>
<textarea name="comments" rows="10" cols="25"></textarea><br><br>
<input type="submit" value="Send">
<input type="reset" value="Reset" onclick="ClearErrors();"><br><br>
</form>

PHP code (in sendmail.php)

 <?php
    var_dump($_POST);
    $firstname = $_POST['firstname'];
    $lastname =  $_POST['lastname'];
    $email = $_POST['emailaddress'];
    $topic = $_POST['topic'];
    $comments = $_POST['comments'];

    $recipient = "emailaddress@domainbame.com";
    $mailheader = "From: " . $email . "\r\n";
    if(mail($recipient, $topic, $comments, $mailheader))
    {
        echo "Email Sent, Thank You!" . " -" . "<a href='contact.php' 
        style='text-decoration:none;color:#ff0099;'> Return to Contact Us Form</a>";
    }
    else
    {
        echo "Email failed to send" . "-" . "<a href='contact.php' 
        style='text-decoration:none;color:#ff0099;'> Return to Contact Us Form</a>";
    }
?>

取出

enctype="text/plain" in the form, this should fix the issue.

The issue might be with your enctype

enctype="text/plain"

Try

enctype="multipart/form-data" 

instead, unless you have a good reason for using text/plain.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM