または
を \n に戻してからセットして下さい。 ☆例: $data['comment'] = preg_replace("//i","\n", $comment); 【使用例】※実際には変数を使うが、判り易くする為に直接内容をセットしています $data['to'] = 'me@hoge.net'; $data['subject'] = 'なんか投稿されてますよー'; $data['name'] = '名無しさん'; $data['email'] = 'hoge@hoge.com'; $data['option'][] = 'URL,http://hogehoge.com/'; $data['option'][] = 'お絵かき絵,http://hoge.net/poti/src/OB11111111.png'; $data['comment'] = 'お絵かきしたにゃ'; noticemail::send($data); 【ご注意】 ・sendmail などの MTA がインストール・設定されていないと使えません。 ・データチェックはしていますが、エラーメッセージは出してません。 ・万が一、このスクリプトにより何らかの損害が発生しても、その責任を私は負いません。 自己の責任で利用して下さい。 ・著作権は放棄しませんが、改造・再配布は自由にどうぞ。 ・ご質問は、までどうぞ。 */ class noticemail{ public static function send($data,$usemb="1"){ $name = $data['name']; $from = $data['email']; $line = "---------------------------------------------------------------------\n"; // ヘッダを指定 $MailHeaders = "Mime-Version: 1.0\n"; $MailHeaders .= "Content-Type: text/plain; charset=ISO-2022-JP\n"; $MailHeaders .= "Content-Transfer-Encoding: 7bit\n"; $MailHeaders .= "X-Mailer: NoticeMail/PHP".phpversion()."\n"; // メール本文作成 $Message = "■".$data['subject']."\n"; $Message .= "Date: ".gmdate("Y/m/d H:i:s",time()+9*3600)."\n"; $Message .= "Host: ".@gethostbyaddr(getenv("REMOTE_ADDR"))."\n"; $Message .= "UserAgent: ".getenv("HTTP_USER_AGENT")."\n"; $Message .= $line; $Message .= "Name: ".$name."\n"; $Message .= "e-Mail: ".$data['email']."\n"; $option = $data['option']; if(is_array($option)){ for($i = 0; $i < count($option); $i++){ list($optitle,$opvalue) = explode(",", rtrim($option[$i])); $Message .= $optitle.": ".$opvalue."\n"; } } $Message .= $line; if($data['comment']){ $com = str_replace("\r\n", "\n", $data['comment']); // 改行文字の統一 $com = str_replace("\r", "\n", $com); $com = preg_replace("/^(\n)+|(\n)+$/", "", $com); // 連続改行を消す $Message .= $com; } if(get_magic_quotes_gpc()){ // \は取る $Message = stripslashes($Message); $name = stripslashes($name); $from = stripslashes($from); } $Message = str_replace("\n", "\r\n", $Message); // 改行文字の統一 // 漢字変換&送信 if(function_exists("mb_internal_encoding")&&function_exists("mb_convert_encoding")&&function_exists("mb_convert_kana") &&$usemb){ mb_internal_encoding("EUC-JP"); // 半角対応 $Message = mb_convert_kana($Message); $name = mb_convert_kana($name); $from = mb_convert_kana($from); // 明らかにメールアドレスじゃない物は除外 if(preg_match("/[\x80-\xA0]/",$from)||stristr($from,'sage')||stristr($from,'http://')) $from = ''; // メールアドレスがなければ代替え if(!$from) $from = 'nomail@'.getenv("HTTP_HOST"); // 日本語ならMIMEヘッド if(preg_match("/[\x80-\xA0]/",$name)){ $name = "=?iso-2022-jp?B?".base64_encode(mb_convert_encoding($name,"JIS","auto"))."?="; } // ヘッダにFrom追加 $MailHeaders .= "From: ".$name." <".$from.">\n"; $MailHeaders = str_replace("\n", "\r\n", $MailHeaders); // 改行文字の統一 // Subjectに日本語があればMIMEヘッド if(preg_match("/[\x80-\xA0]/",$data['subject'])){ $data['subject'] = "=?iso-2022-jp?B?".base64_encode(mb_convert_encoding($data['subject'],"JIS","auto"))."?="; } // メール送信 mail($data['to'], $data['subject'], mb_convert_encoding($Message,"JIS","auto"), $MailHeaders); }elseif(@file_exists("jcode.phps")||@file_exists("jcode.php")){ if(@file_exists("jcode.phps")){ require_once('jcode.phps'); } else{ require_once('jcode.php'); } // 半角対応 $Message = HANtoZEN($Message,1); $name = HANtoZEN($name,1); $from = HANtoZEN($from,1); // 明らかにメールアドレスじゃない物は除外 if(preg_match("/[\x80-\xA0]/",$from)||stristr($from,'sage')||stristr($from,'http://')) $from = ''; // メールアドレスがなければ代替え if(!$from) $from = 'nomail@'.getenv("HTTP_HOST"); // 日本語ならMIMEヘッド if(preg_match("/[\x80-\xA0]/",$name)){ $name = "=?iso-2022-jp?B?".base64_encode(JcodeConvert($name,0,3))."?="; } // ヘッダにFrom追加 $MailHeaders .= "From: ".$name." <".$from.">\n"; $MailHeaders = str_replace("\n", "\r\n", $MailHeaders); // 改行文字の統一 // Subjectに日本語があればMIMEヘッド if(preg_match("/[\x80-\xA0]/",$data['subject'])){ $data['subject'] = "=?iso-2022-jp?B?".base64_encode(JcodeConvert($data['subject'],0,3))."?="; } // メール送信 mail($data['to'], $data['subject'], JcodeConvert($Message,0,3), $MailHeaders); }else{ return false; } return true; } } ?>