0

こんにちは、PHP で生成された非常に単純な HTML メールを作成しました。これは、私のウェブサイトのお問い合わせフォームから提供されます。私の問題は、ユーザーのメッセージに textarea ボックスを使用した場合、改行が PHP 文字列に引き継がれないことです。これを許可できる方法はありますか?メールを受信すると、押しつぶされたように見えるからです。ありがとう。

アップデート:

私のコード:

if(count($_GET)){
$name = $_GET["name"];
$company = $_GET["company"];
$mail_from = $_GET["email"]; 
$phone = $_GET["phone"]; 
$address = $_GET["address"]; 
$postcode = $_GET["postc"]; 
$subject = $_GET["subject"]; 
$message = nl2br($_GET["comment"]);
$headers = "From: " . strip_tags($_GET['email']) . "\r\n";
$headers .= "Reply-To: ". strip_tags($_GET['email']) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";}

次に、文字列を検証します

if ($valid = true){
$finalmessage = '<html><body>';
$finalmessage .= '<p>From: '.$name.'</p>';
$finalmessage .= '<p>Company: '.$company.'</p>';
$finalmessage .= '<p>Email: '.$mail_from.'</p>';
$finalmessage .= '<p>Phone: '.$phone.'</p>';
$finalmessage .= '<p>Address: '.$address.'</p>';
$finalmessage .= '<p>Postcode: '.$postcode.'</p>';
$finalmessage .= '<p>Message:<br /> '.$message.'</p>';
$finalmessage .= '</body></html>';

$to ='myemail@myemail.co.uk';
$send_contact=mail($to,$subject,$finalmessage,$headers);}

これはまだ機能しません。すべて正常に動作しますが、ユーザーがテキストエリアでキャリッジ リターンを使用すると、これは渡されず、実際のメッセージは圧縮されます。

4

2 に答える 2

0

改行 (\r,\n) は html で改行を作成しません。nl2br($userinputtext) を試しましたか?

于 2013-10-21T12:10:47.540 に答える