メールフォームについての質問です。
PHP初心者です。
メールフォームを作成しているのですが、入力画面と確認画面はできているのですが、送信完了の画面で苦戦しています。入力内容を送信先へ反映させたいのですが、うまくいきません。
ちなみにXAMPP、qdmailを使っています。
詳しい方、どのあたりに問題があるのか教えてください。
以下、ソースです。
<?php
echo '<?xml version="1.0" encoding="UTF-8"?>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//ja" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Language" content="ja">
<title>送信完了しました。</title>
</head>
<body>
<h1>送信完了しました。</h1>
<?php
include_once('qdmail.php');
//
mb_Language("japanese");
mb_internal_encoding("utf-8");
print_r($_POST);
if(!empty($_POST['mail'])){
$to=$_POST['mail'];
$subject=$_POST['sub'];
$name=$_POST['name'];
$ruby=$_POST['ruby'];
$zip=$_POST['zip'];
$address=$_POST['address'];
$telephone=$_POST['telephone'];
$mail=$_POST['mail'];
$question=$_POST['question'];
}
//
$zip=mb_convert_kana($_POST['zip'],'a','utf-8');
if(!preg_match("/\A\d{3}\-\d{4}\z/",$zip)){
$zip="正しい郵便番号を入力してください";
}
//
$param = array(
'host'=>'??????',
'port'=> 587 ,
'from'=>'return_path_address@example.com',
'protocol'=>'SMTP_AUTH',
'user'=>'????@????????',
'pass' => '????????',
);
$to = array( '???@?????????' , '宛先日本語名' );
$from = array( 'from@example.com' , '送り元日本語名' );
$subject = 'メールのテスト(テキスト)';
$body = $name."\n".$ruby."\n".$zip."\n".$mail."\n".$address."\n".$telephone."\n".$mail."\n".$question;
$option = array('type'=>'text','smtp'=>$param);
$flag = qd_send_mail($option , $to , $subject , $body , $from);
//$success=mb_send_mail($to,$sub,"名前:".$name."フリガナ:".$ruby."郵便番号:".$zip." 住所:".$address." TEL:".$telephone." ご質問等:".$question."from:".$from);
if($flag){
echo('送信しました');
}
else{
echo('送信失敗!!');
}
?>
</body>
</html>
お礼
御回答有難うございます 最終的には一番上のレンタルフォームに落ち着きました とても使い易くていいですね 有難うございました