0

だから、私の問題は、PHP 経由でメールを送信しようとしていることです。そして、これらすべての投稿をそれぞれ 1 つの行に配置したいと考えています。ただし、 $header = "content-type: text/plain; charset=utf-8\r\n"; これは不可能に思えます。もちろん、そのコードを削除すると、メールに åäö を表示できなくなります。私はこれで2日間過ごしました。

<?php

$to = "info@mywebsite.se";
$subject = "Bokning från hemsidan.";
$header = "Content-type: text/plain; charset=utf-8\r\n";
$header .= "From: bokning@mywebsite.se\r\n";
$body = "En bokning:" . "\n\n" .
    $_POST["namn"] . "\n" .
    $_POST["mobilnummer"] . "\n" .
    $_POST["hemnummer"] . "\n" .
    $_POST["email"] . "\n" .
    $_POST["gatuadress"] . "\n" .
    $_POST["postnummer"] . "\n" .
    $_POST["vaning"] . "\n" .
    $_POST["portkod"] . "\n" .
    $_POST["bokningsdag"] . "\n" .
    $_POST["byggstadning"] . "\n" .
    $_POST["flytthjalp"] . "\n" .
    $_POST["flyttstadning"] . "\n" .
    $_POST["typavbostad"] . "\n" .
    $_POST["fonsterputsning"] . "\n" .
    $_POST["kontorsstadning"] . "\n" .
    $_POST["rojningbortforsling"] . "\n" .
    $_POST["visningsstad"] . "\n" .
    $_POST["dodsbo"] . "\n" .
    $_POST["boyta"] . "\n" .
    $_POST["kallare"] . "\n" .
    $_POST["vind"] . "\n" .
    $_POST["totalkvm"] . "\n" .
    $_POST["garage"] . "\n" .
    $_POST["forrad"] . "\n" .
    $_POST["veranda"] . "\n" .
    $_POST["balkongglas"] . "\n" .
    $_POST["balkongejglas"] . "\n" .
    $_POST["friggebod"] . "\n" .
    $_POST["fakgatuadress"] . "\n" .
    $_POST["fakpostnummer"] . "\n" .
    $_POST["jarut"] . "\n" .
    $_POST["nejrut"] . "\n" .
    $_POST["meddelande"];


if($_POST){
    mail($to, $subject, $body, $header);
    $feedback = "Tack för din bokning! Vi kommer att kontakta dig inom kort via mail eller telefon för att bekräfta din bokning. Vid bråskande ärenden var vänlig ring kontoret. Våra telefontider är 8.00-12.30.";
}
?>
4

3 に答える 3

1

\r\n は、 RFC2822で要求されているように、電子メールの改行に対して機能します。

メッセージは文字列に分割されます。行は、改行と改行の 2 文字で区切られた一連の文字です。つまり、キャリッジ リターン (CR) 文字 (ASCII 値 13) の直後にライン フィード (LF) 文字 (ASCII 値 10) が続きます。(通常、キャリッジ リターン/ライン フィードのペアは、このドキュメントでは "CRLF" として記述されます。)

参照: \r\n の代わりに \n が必要な「低品質の Unix MTA」に関するphp.net のコメント

\rは CR で、\nPHP では LF です

おそらく、これは にのみ有効であると述べるべきでしContent-Type:text/plainたが、メール システムは、上記のセクションを含む Internet Engineering Task Force の関連するすべての RFC に適合するように作成されることになっています。代わりに HTML を送信する場合は、代わりに を使用<BR />してください。

于 2013-10-22T22:45:37.197 に答える
0

php.net によると、各行を「\r\n」で区切る必要があります。

于 2013-10-22T22:47:08.037 に答える