-PR-
回答 受付中

header("Location: mailto:

  • すぐに回答を!
  • 質問No.9405354
  • 閲覧数56
  • ありがとう数1
  • 気になる数0
  • 回答数2

お礼率 79% (919/1156)

header("Location: mailto:
でメーラを開く時、本文を改行させたらエラーになるのですが、回避する方法はありませんか?



<?php
// 送信ボタンが押されたら
if (isset($_POST["submit"])) {
$wk_adrs= "web@test.sakura.ne.jp";
$wk_subject= "サブジェクト";


// これはOK
$wk_body= "ボディー";

// これはNG
$wk_body= "1行目ボディー".PHP_EOL."2行目ボディー";

// これもG
$wk_body = <<< EOM
1行目ボディー
2行目ボディー
EOM;

// 画面遷移させる
$wk_Location="Location: mailto:".$wk_adrs."?subject=".$wk_subject."&body=".$wk_body;
header($wk_Location);

exit;
}
?>


下記のメッセージが出る
Warning: Header may not contain more than a single header, new line detected in
通報する
  • 回答数2

回答 (全2件)

  • 回答No.2
レベル13

ベストアンサー率 65% (690/1047)

// 画面遷移させる
$wk_body = urlencode( $wk_body );
$wk_Location="Location:....

~みたいにしたら通るかも?

P.S.
今の時代、"mailto:" は使わない方が良いと思います。そもそも "mailto:" で起動させるべきメールソフトがもう時代遅れと言うか、使ってる人はかなりの少数派になってしまったので意味をなさない場合はほとんどかと(何も起きないかエラーメッセージが出るだけ)。

どうしてもphp経由でメール送信したのであれば、きちんとメールサーバを立ち上げて mb_send_mail() を使うべきです。


  • 回答No.1
レベル13

ベストアンサー率 26% (178/681)

テストもなーにもしてないから正解かわかりませんが、

http://www.kanaya440.com/contents/tips/html/003.html
http://www.tagindex.com/html_tag/link/a_mailto_sub.html

%0d%0a … 改行を入れます

って書いてるからこれじゃ?
お礼コメント
webuser

お礼率 79% (919/1156)

ありがとうございます。
投稿日時 - 2017-12-12 12:54:36
  • 回答数2
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-

特集


開業・独立という夢を持つ人へ向けた情報満載!

ピックアップ

ページ先頭へ