<?php
mb_language('ja');
mb_internal_encoding('UTF-8');
/**
 * proc_open で sendmail を使う方法
 *
 * sendmail 互換のソフトが必要です。
 * sendmail ソフト側でメールアカウントなどの設定をしておいてください。
 *
 * "XMail" は Windows 用のメールサーバです。
 * 自宅鯖にメールサーバを構築する必要があります。
 *
 * "sendまね～る"・"fake sendmail for windows"・"sendmail.exe V2.0"
 * はプロパイダや無料メールのサーバを使用してメール送信できます。
 * それぞれの説明書をよく読んで設定を済ませておいてください。
 */

function sendmail($to, $subject, $body)
{
	///// あなたの環境にあわせて書き換えてください /////
	// ここから
	$myname = 'L2J スタッフ';
	$from = '**********@*****.com';

//|$sendmail = 'C:/xmail/sendmail.exe -t -f'.$From;	//"XMailサーバ"
   $sendmail = 'C:/bin/sendmane/sendmane.exe -t';	//"sendまね～る"
//|$sendmail = 'C:/bin/fake_sendmail/sendmail.exe -t';	//"fake sendmail for windows"
//|$sendmail = 'C:/bin/sendmail.exe -t';	//"sendmail.exe V2.0" SPENCER Network Communications, Inc.
//|$sendmail = '/usr/lib/sendmail -t -f'.$From;
	// ここまで
	////////////////////////////////////////////////////

	if (stristr($body, '<html>') == TRUE) $ContentType = 'text/html';
	else                                  $ContentType = 'text/plain';

	$descriptorspec = array(
	   0 => array('pipe', 'r'),
	   1 => array('file', '__sendmail_stdout.txt', 'w'),
	   2 => array('file', '__sendmail_stderr.txt', 'w')
	);
	$process = proc_open($sendmail, $descriptorspec, $pipes);
	$MAIL = $pipes[0];

	fputs($MAIL, "From: ".mb_encode_mimeheader($myname)." <$from>\r\n");
//+	fputs($MAIL, 'Reply-To: '.$from."\r\n");
	fputs($MAIL, 'To: '.$to."\r\n");
	fputs($MAIL, 'Subject: '.mb_encode_mimeheader($subject)."\r\n");
	fputs($MAIL, "X-Mailer: L2J ACM/PHP/sendmail\r\n");
	fputs($MAIL, "Content-Transfer-Encoding: 7bit\r\n");
	fputs($MAIL, "Content-Type: $ContentType; charset=iso-2022-jp\r\n\r\n");

	fputs($MAIL, mb_convert_encoding($body, 'iso-2022-jp', mb_internal_encoding()));
	fclose($MAIL);

	$status = proc_close($process);
	// エラー判定 --- sendmail 互換ソフトによって判定方法が違います。
	if ($status)
		die('<br><b>Error</b>: Can\'t send a mail in <b>'.basename(__FILE__).'</b> on line <b>'.__LINE__.'</b><br>');
	if (filesize('__sendmail_stdout.txt') > 0)
		die('<br><b>Error</b>: Can\'t send a mail in <b>'.basename(__FILE__).'</b> on line <b>'.__LINE__.'</b><br>');
	if (filesize('__sendmail_stderr.txt') > 0)
		die('<br><b>Error</b>: Can\'t send a mail in <b>'.basename(__FILE__).'</b> on line <b>'.__LINE__.'</b><br>');
	return TRUE;
}
?>
