phpでメールを送信するフォームを作る

この記事がお役に立てたならシェアしてくれると嬉しいです。

PHPを利用すれば、とても簡単にメールを送信するフォームが作れます。

スポンサーリンク

メール送信する方法

まず、関数について説明します。

mb_language(“Japanese”);

まずは、phpに日本語メールを使う事を宣言します。
日本語以外の言語を使うなら”Japanese”の部分に
該当する言語名を指定します。
また、日本語なら”Ja”と省略も可能です。

mb_convert_encoding(エンコードする文字変数,エンコード後の文字コードの種類,エンコード前の文字コードの種類);

返り値はエンコードされた文字変数です。

メールはJIS形式なので文字コードを変換する必要があります。
JISをメインで使う設定ではない場合、しておかないと文字化けします。
エンコードする文字コードの種類は
UTF-8やSJIS等も指定できます。

mb_send_mail(送信先メールアドレス,件名,本文);

成功するとTRUE、失敗するとFALSEが返ってきます。

これだけでメールを送れます。

サンプルソース

例:

<?php
mb_language("Japanese");
$ad=mb_convert_encoding("test@mail.com","JIS","SJIS");
$ke=mb_convert_encoding("テスト用の件名","JIS","SJIS");
$ho=mb_convert_encoding("テスト用の本文","JIS","SJIS");
mb_send_mail($ad,$ke,$ho);
?>


このサンプルではmb_convert_encodingではSJISで書かれている文字をJISに変換して
「test@mail.com」というメールアドレスに
「テスト用の件名」という件名で「テスト用の本文」という本文で送ります。


実際にフォームを作ると

例1:test13_1.php

<form action="test13_2.php" method="post">
宛先:<input type="text" name="adress" value="">
<BR>
件名:<input type="text" name="kennmei" value="">
<BR>
<textarea name="honnbunn" cols="20" rows="5" wrap="off">
本文
</textarea>
<br>
<input type="submit" name="botan" value="送信">
</form>



例2:test13_2.php

<?php
if(isset($_POST["botan"]))
{
     mb_language("ja");

     $ad=mb_convert_encoding($_POST["adress"],"JIS","SJIS");
     $ke=mb_convert_encoding($_POST["kennmei"],"JIS","SJIS");
     $ho=mb_convert_encoding($_POST["honnbunn"],"JIS","SJIS");

     if(mb_send_mail($ad,$ke,$ho))
     {
          print "送信しました。<br>";
     }
     else
     {
          print "送信に失敗しました。<br>";
     }
}
?>


このサンプルではフォームで宛先・件名・本文を入力しメールを送ります。
メールソフトと違い送信者はphpファイルを置いているサーバーになるので注意をしましょう。

スポンサーリンク

この記事がお役に立てたならシェアしてくれると嬉しいです。


最新記事の更新情報をお届けします。

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)