1. 現在位置:
  2. トップページ
  3. HP作成tips
  4. PHP-メール送信フォーム
メール送信フォーム
PHP3・PHP4どちらでも使えるはず
書き込みの記入もれ及びメールアドレスのチェックでエラーの場合、エラー用のHTMLに飛びます。
送信元アドレスに名前を付けました。
フォームを別窓で開いた時のHTMLの書き方になっています

■ サンプル

「メール送信フォーム」こちら

■ ソース

m-mail.html  レイアウトはご自由に
<html>
<head>
<title>メール送信</title>
<META Http-Equiv="Content-Type" Content="text/html;charset=x-euc-jp">
</head>
<body bgcolor="#ffffff">
<center>
<br><br><br>
<table border="0" cellpadding="0" cellspacing="0" width="500">
<tr><td align="left" valign="top"><BR>
      <font size="3" color="#000000">
      mitti へのメールは,こちらからお願いします.
      </font></td></tr>
</table>
<br>
<form action="m-kakunin.php" method="post">
<table border="1" cellpadding="5" cellspacing="0" width="500">
<tr><td align="center" bgcolor="#f7bdce">メール送信フォーム<br></td></tr>
<tr><td align="center">
      <table width="480" border="0">
      <tr><td>E-mail</td>
            <td><input type="text" name="mail_address" size="50"></td></tr>
      <tr><td>名前</td>
            <td><input type="text" name="lastname" size="20"></td></tr>
      <tr><td>件名</td>
            <td><input type="text" size="50" name="subjectm"></td></tr>
      <tr><td>本文</td>
            <td><textarea name="text" cols="55" rows="10"></textarea></td></tr>
      </table>
</td></tr>
<tr><td align="center" bgcolor="#f7bdce">
      <input type="submit" name="submit" value="  送  信  ">
      </td></tr>
</table>
</form>
<br>
</center>
</body>
</html>


■ ソース

m-kakunin.php  「自分のメールアドレス」の所にはご自分のメールアドレスを入れて下さい
<?
if($submit == " 送 信 "){

if ((! empty($HTTP_POST_VARS['mail_address'])) and (! empty($HTTP_POST_VARS['lastname'])) and (! empty($HTTP_POST_VARS['subjectm'])) and (! empty($HTTP_POST_VARS['text']))) {
}

else{
    header("Location: m-mail_error.html");
    exit;
}

if (!eregi("^[_a-z0-9\-]+(\.[_a-z0-9\-]+)*@[a-z0-9\-]+(\.[a-z0-9\-]+)*$", $mail_address)) {
    header("Location: m-mail_error.html");
    exit;
}

}

$HTTP_POST_VARS = preg_replace("/\r\n/","\n",$HTTP_POST_VARS);
$HTTP_POST_VARS = preg_replace("/\r/","\n",$HTTP_POST_VARS);
$HTTP_POST_VARS = preg_replace("/\n/","<br>",$HTTP_POST_VARS);

    $from = "ホームページを作ろう <自分のメールアドレス>";
    $reply = "自分のメールアドレス";

// $reply = "メールアドレス1,メールアドレス2"; 2箇所に送信する場合

    // メール送信(相手に控えを送付する場合はこちらも使う)
    $to= "$mail_address";
    $from = "$from";
    $subject = "メール送信内容控";
    $usermail = "メールフォームよりメールを送信しました\n\n";
    $usermail .= "E-mail:$mail_address\n\n";
    $usermail .= "名前:$lastname\n\n";
    $usermail .= "件名:$subjectm\n\n";
    $usermail .= "本文:$text\n\n";
    $usermail .= "--------------------------------------------------------------\n";
    $usermail .= "ホームページを作ろう\n";
    $usermail .= "http://park.millto.net/~mitti/\n";
    mail($to, $subject, $usermail, "From: $from\nContent-Type: text/plain;\n charset=\"x-euc\"\n");

    // メール送信
    $to= "$reply";
    $from = "$from";
    $subject = "メール内容";
    $mail = "メールフォームよりメールが来ました\n\n";
    $mail .= "E-mail:$mail_address\n\n";
    $mail .= "名前:$lastname\n\n";
    $mail .= "件名:$subjectm\n\n";
    $mail .= "本文:$text\n\n";
    $mail .= "--------------------------------------------------------------\n";
    $mail .= "ホームページを作ろう\n";
    $mail .= "http://park.millto.net/~mitti/\n";
    mail($to, $subject, $mail, "From: $from\nContent-Type: text/plain;\n charset=\"x-euc\"\n");

?>
<!-- ここまで送信処理のPHPプログラム //-->

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
<title>送信受付</title>
</head>
<body bgcolor="#FFFFFF" link="#3333ff" vlink="#ff0033" alink="#ffff00">
<div align="center">

  <table width="560" border="0" cellspacing="0" cellpadding="0">
    <tr align="center">
      <td>
      <br><br><br>
      <table width="500" border="1" cellspacing="0" cellpadding="5">
        <tr><td>E-mail</td><td><? print $HTTP_POST_VARS['mail_address'];?></td></tr>
        <tr><td>名前</td><td><? print $HTTP_POST_VARS['lastname'];?></td></tr>
        <tr><td>件名</td><td><? print $HTTP_POST_VARS['subjectm'];?></td></tr>
        <tr><td>本文</td><td><? print $HTTP_POST_VARS['text'];?></td></tr>
      </table>
      </td>
    </tr>
    <tr valign="top">
      <td align="center">
      <br><br><br>
      上記内容でメールを送信しました,内容の控えをメールしましたのでご確認下さい。
      <br><br><br>
      <form><input type="button" name="OK" value="閉じる" onClick="window.close()"></form>
      </td>
    </tr>
  </table>

<br><br><br>

</div>
</body>
</html>


■ ソース

m-mail_error.html  レイアウトはご自由に
<html>
<head>
<title>エラー</title>
<META Http-Equiv="Content-Type" Content="text/html;charset=x-euc-jp">
</head>
<body bgcolor="#FFFFFF" link="#3333ff" vlink="#ff0033" alink="#ffff00">
<center>
<br><br><br>
<br><br><br>
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr align="left" valign="top">
    <td>必須項目がすべて入力されていないか、メールアドレスの間違えがあります。恐れ入りますが,ブラウザの「戻る」ボタンで戻り,入力してください.</td>
</tr>
</table>
</center>
</body>
</html>