[PHP-users 12854] PHP-Postfixでのメール送信

Tomonori Ueno php-users@php.gr.jp
2003年1月28日 14:33:01 +0900


はじめまして。
上野と申します。
御世話になります
PHPで書かれたメールフォームプログラムからメールが送信できず困っていま
す。
厳密にはメール送信はできますが、件名と差出人だけが送信できるのに、
本文はブランクになってしまいます。 フォーム送信したコピーを確認のため
に
送信者に返す用途のプログラムですが。 
シェルからはmailコマンドで日本語メールがISPに送れます。
環境はVineLinux2.6ftp, Apache1.3.27, PHP4.3.0, Postfix-1.1.12-0vl0.26
です。
PHPのインストール時は、/usr/sbin/sendmailにパスがあるのを確認していま
す。
メールアドレスは値が渡されていて、名前や住所や趣味などの値が渡されてい
ないと
仮定すれば、どこをチェックすればよろしいのでしょうか?
下記がスクリプトです。 これはある教則本のサンプルですが。 
どうぞよろしくお願いいたします。 
<?php
require_once( "common.php" );
if ( $_REQUEST[ "SUBMIT" ] != "" ) {
 $IsError = false;
 $ErrorMessage = "";
 if ( $_REQUEST[ "VALUE_NAME" ] == "" ) {
 $IsError = true;
 $ErrorMessage .= "名前を入力してください。<BR>";
 }
 if ( $_REQUEST[ "VALUE_MAIL" ] == "" ) {
 $IsError = true;
 $ErrorMessage .= "メールアドレスを入力してください。<BR>";
 }
 if ( $IsError == false ) {
 $mail_to = $_REQUEST[ "VALUE_MAIL" ];
 $subject = "ありがとうございました。";
 $body = "PHPメールフォームのご利用ありがとうございました。\n" .
 
 "以下は、送信された内容のコピーです。\n\n";
 $body .= "名前   :" . $_REQUEST[ "VALUE_NAME" ] . "\n";
 $body .= "郵便番号  :" . $_REQUEST[ "VALUE_POST" ] . "\n";
 $body .= "住所   :" . $_REQUEST[ "VALUE_ADDRESS" ] . "\n
";
 $body .= "メールアドレス:" . $_REQUEST[ "VALUE_MAIL" ] . "\n";
 $body .= "趣味   :" . $_REQUEST[ "VALUE_FAVORITE" ] . "
\n";
 mb_send_mail( $mail_to, $subject, $body );
 
 header( "Location: http://" . $_SERVER[ "HTTP_HOST" ]
 . dirname( $_SERVER[ "PHP_SELF" ] ) . "/complete.php?VALUE_
NAME="
 . urlencode( $_REQUEST[ "VALUE_NAME" ] ) );
 exit();
 }
}
?>
<HTML>
<HEAD><TITLE>05-01</TITLE></HEAD>
<BODY>
<H1 ALIGN="CENTER">メールフォーム</H1>
<FORM ACTION="<?php echo( $_SERVER[ "PHP_SELF" ] ) ?>"
 METHOD="POST">
<?php
 if ( $IsError == true ) {
 ?>
 <FONT COLOR="RED"><B><?=$ErrorMessage?></B></FONT>
 <?php
 }
?>
下記項目に情報を入力後、「送信」ボタンをクリックしてください。<BR>
<FONT COLOR="RED">*</FONT>のついた項目は入力必須です。
<TABLE WIDTH="100%" BORDER="0">
<TR>
 <TD BGCOLOR="#999999">お名前</TD>
 <TD BGCOLOR="#CCCCCC">
 <INPUT TYPE="TEXT" NAME="VALUE_NAME" SIZE="20" VALUE="<?php
 HESC( $_REQUEST[ "VALUE_NAME" ] );
 ?>"><FONT COLOR="RED">*</FONT></TD>
</TR>
<TR>
 <TD BGCOLOR="#999999">郵便番号</TD>
 <TD BGCOLOR="#CCCCCC">
 <INPUT TYPE="TEXT" NAME="VALUE_POST" SIZE="20" VALUE="<?php
 HESC( $_REQUEST[ "VALUE_POST" ] );
 ?>"></TD>
</TR>
<TR>
 <TD BGCOLOR="#999999">住所</TD>
 <TD BGCOLOR="#CCCCCC">
 <INPUT TYPE="TEXT" NAME="VALUE_ADDRESS" SIZE="50" VALUE="<?php
 HESC( $_REQUEST[ "VALUE_ADDRESS" ] );
 ?>"></TD>
</TR>
<TR>
 <TD BGCOLOR="#999999">メールアドレス</TD>
 <TD BGCOLOR="#CCCCCC">
 <INPUT TYPE="TEXT" NAME="VALUE_MAIL" SIZE="40" VALUE="<?php
 HESC( $_REQUEST[ "VALUE_MAIL" ] );
 ?>"><FONT COLOR="RED">*</FONT></TD>
</TR>
<TR>
 <TD BGCOLOR="#999999">趣味</TD>
 <TD BGCOLOR="#CCCCCC">
 <INPUT TYPE="RADIO" NAME="VALUE_FAVORITE" VALUE="旅行"
 <?php
 echo( ( $_REQUEST[ "VALUE_FAVORITE" ] == "旅行" ) ?
 "checked" : "" );
 ?>>旅行
 <INPUT TYPE="RADIO" NAME="VALUE_FAVORITE" VALUE="音楽"
 <?php
 echo( ( $_REQUEST[ "VALUE_FAVORITE" ] == "音楽" ) ?
 "checked" : "" );
 ?>>音楽
 <INPUT TYPE="RADIO" NAME="VALUE_FAVORITE" VALUE="プログラミング"
 <?php
 echo( ( $_REQUEST[ "VALUE_FAVORITE" ] == "プログラミング" ) ?
 "checked" : "" );
 ?>>プログラミング
 </TD>
</TR>
<TR>
 <TD COLSPAN="2" ALIGN="CENTER">
 <INPUT TYPE="SUBMIT" NAME="SUBMIT" VALUE=" 送 信 ">
 <INPUT TYPE="RESET" NAME="CLEAR" VALUE=" ク リ ア ">
 </TD>
</TR>
</TABLE>
</FORM></BODY></HTML>

AltStyle によって変換されたページ (->オリジナル) /