• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:phpのメールフォーム探しています)

phpのメールフォーム探しています

このQ&Aのポイント
  • ホームページのトップページにML配信申し込み用のフォームcgiを置いているのですが、重いのでphpへ変更したいと思っています。
  • 無料のメールフォームで、できれば設定が簡単な所。エラーや御礼がダイアログで出ることが望ましいです。
  • phpのメールフォーム探しています。オススメがあったら教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

ML配信申し込みって、MLのsubscribeアドレスへの送信が必要ですかねぇ・・。そのあたりがちょっとわかりません。それ以外だと一般的なメールフォームは下記のような感じですかね <?php mb_language('ja'); mb_internal_encoding('sjis');    # とりあえずSJISで(汗 $mail_to = 'anyname@example.com';  # 送信先メールアドレス $subject = 'テストメ-ル';      # メールの件名 $mailfrom = 'anyname@example.com';  # 設置サーバにあるメールアカウント $thanks = '';  # 送信後に表示するページ(なければ空白) $errmsg = ''; $result = ''; $name = ''; $mail = ''; if ($_POST) {   $body = '';   foreach ($_POST as $key=>$value) {     if (get_magic_quotes_gpc()) { $value = stripslashes($value); }     $$key = $value;     $body .= '【' . $key . "】\n";     $body .= $value . "\n\n";     }   if (get_magic_quotes_gpc()) { $name = stripslashes($_POST['name']); }   if ($name == '') { $errmsg .= '名前を入力してください'; }   if ($mail == '') { $errmsg .= 'メールアドレスを入力してください'; }   if ($errmsg == '') {     if (@mb_send_mail($mail_to, $subject, $body, 'From: ' . $mailfrom)) {       if ($thanks) {         header('Location: ' . $thanks);         exit;         }       $result = 'メールを送信しました';       }     else {       $errmsg .= '送信できませんでした';       }     }   } ?> <html> <head><title>Mail TEST</title></head> <body> <strong><?= $errmsg; ?><?= $result; ?></strong> <form action="" method="post"> <input type="text" name="name" size="20" value="<?= $name; ?>"><br> <input type="text" name="mail" size="20" value="<?= $mail; ?>"><br> <textarea name="text" rows="5" cols="40"><?= $text; ?></textarea><br> <input type="submit" value="送信"> </form> </body> </html> #整形のため2バイト(日本語)の空白を入れているので注意してください。 エラーや御礼がダイアログ・・というのはまたあとで

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.2

ANo.1です。 >エラーや御礼がダイアログで出る というのは、ANo.1の後半のhtml(入力フォーム)部分をカットして、htmlファイルの入力フォームのformタグでtargetを指定してやればどうでしょうかね。もちろん「<strong><?= $errmsg; ?><?= $result; ?></strong>」の部分は必要ですが(エラーもしくはお礼を表示する)。 ただtargetのウィンドウサイズをダイアログのサイズに調整・・となるとJavaScriptになりますねぇ。そのあたりの連携はちょっと面倒かも。 #この部分(ダイアログ)はもうちょっと考えてみます(汗

すると、全ての回答が全文表示されます。

関連するQ&A