可能重复:
method="post"enctype="text/plain"不兼容?
我知道这个话题在这个论坛上出现过几次,但都没有解决我的问题。
当我尝试使用POST方法从html站点发送"联系人"数据时,我的php站点上的$_POST为空。我查看了一个猎人网站和教程。我做了和节目中一模一样的事。。。使用"GET"方法可以获取数据,但我不能这样做。URL太长。
这是我的HTML代码。
<form name="post" id="post" method="POST" action="http://podsmoczymdiamentem.host56.com/post.php" enctype="text/plain">
<table BORDER="0" CELLSPACING="0" CELLPADDING="4">
<tr><td colspan="2"><b>Tytuł:</B></TD></tr>
<tr><td colspan="2"><input type="text" name="tytul" id="tytul" size="30"></TD></TR>
<tr><td colspan="2"><b>Treść:</B></TD>
<tr> <td colspan="2"><textarea name="opowiadanie" cols="70" wrap="virtual" rows="30"></TEXTAREA></TD></TR>
<tr><td align="right"></TD><td align="right"><b>Imię:</B><input type="text" name="autor" size="20"></TD></TR>
<tr><td></TD><td align="right"><b>e-mail:</B><input type="text" name="e-mail" size="20"></TD></TR>
<tr> <td> </TD> <td align="right">
<input type="submit" name="submit" value="Wyślij"><input type="reset" name="reset" value="Wyczyść">
</TD></TR>
</TABLE></FORM></div>
和PHP
<?php
if (empty($_POST['submit'])) {
echo 'Wiadomość jest pusta!';
}else{
$autor = $_POST['autor'];
$tytul = $_POST['tytul'];
$subject = "$autor nadesłał swoją opowieść: $tytul";
$nadawca = $_POST['e-mail'];
$adresat = 'podsmoczymdiamentem@gmail.com';
$opowiadanie = $_POST['opowiadanie'];
$headers .= "Content-Type: text/html; charset=ISO-8859-2'r'n";
$subject = "=?ISO-8859-2?B?".base64_encode($subject)."?=";
$tresc = "Witaj Marcinie. Użytkownik <b>$autor</b> nadesłał opowiadanie do twej karczmy. Oto ono:<br><br><b><h1>$tytul</h1></b><br><br> $opowiadanie";
$mail_sent = @mail( $adresat, $subject, $tresc, $headers);
if($mail_sent == TRUE)
echo 'Wiadomość została wysłana.';
else
echo 'Ups. Coś nie wyszło. Skontaktuj się z karczmarzem PSD w celu wyjaśnienia problemu.';
}
?>
我做错了什么?
您使用了错误的编码类型。使用application/x-www-form-urlencoded
而不是text/plain
。