0

私はphpを学んでいて、自分のメールに送信するフォームを作成しようとしています。この私のコード:

  $to = "name@domain.com";
  $subject = "Competition Entry - WIN A 2 NIGHT FAMILY PRICE";
  $message = "Name: ".$name. "<br />" ."Surname: ".$surname.;
  mail ($to, $subject, $message);
  ?>

メールに送信すると、次のように表示されます。

Name:  <br /> Surname:

<br />ブレークとしてではなくテキストとして表示されるのはなぜですか?

4

4 に答える 4

3

ヘッダーを追加Content-Type

$headers .= "Content-Type: text/html; charset=UTF-8\r\n";

HTML 形式でメールを送信するドキュメントの例 : http://css-tricks.com/sending-nice-html-email-with-php/

于 2013-08-15T08:35:17.817 に答える
1

メール本文はデフォルトでプレーンテキストであり、<br />HTML タグであるためです。HTML でメールを送信する場合は、適切にビルドする必要があります (PHPMailerクラスを使用して仕事をすることをお勧めします)。改行だけが必要な場合。を使用する必要があります\n

于 2013-08-15T08:35:26.557 に答える
1

html でメールを送信する必要がある場合は、適切なヘッダーを送信する必要があります。

 $header  = "MIME-Version: 1.0\r\n";
 $header .= "Content-type: text/html; charset: utf8\r\n";
 $to      = "name@domain.com";
 $subject = "Competition Entry - WIN A 2 NIGHT FAMILY PRICE";
 $message = "Name: ".$name. "<br />" ."Surname: ".$surname.;
 mail ($to, $subject, $message, $headers);
于 2013-08-15T08:35:56.427 に答える
0

Swiftmailerを使い始めると、あなたの生活は楽になります。

require_once('swift/lib/swift_required.php');
$transport = Swift_MailTransport::newInstance();
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance()
    ->setFrom(array($from))
    ->setTo(array($to))
    ->setEncoder(Swift_Encoding::get7BitEncoding())
    ->setSubject($subject)
    ->setBody($body, 'text/html')
    ->addPart(strip_tags($body), 'text/plain')
    ->attach(Swift_Attachment::fromPath($filename))
;
$mailer->send($message);
于 2013-08-15T08:44:37.870 に答える