1

重複の可能性:
method="post" enctype="text/plain" は互換性がありませんか?

このトピックがこのフォーラムで数回あったことは知っていますが、どれも私の問題を解決しませんでした.

私のphpサイトでメソッドPOSTを使用してhtmlサイトから「連絡先」データを送信しようとすると、$ _POSTが空になります。1 つの hundert サイトとチュートリアルを確認しました。私はそれが示されたのとまったく同じことをしました...メソッド「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>&nbsp;</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.';
      }
?>

私は何を間違っていますか?

4

1 に答える 1

7

間違ったエンコード タイプを使用しています。application/x-www-form-urlencodedの代わりに使用しtext/plainます。

于 2013-01-01T15:08:54.483 に答える