• ベストアンサー

PHPでメールフォームを作るのはどれほど難しいのでしょうか?

はじめまして。 このたび、PHP初心者として安くでサーバをレンタルしたものです。 肝心なメールフォームを作らないとと思い、参考書を探しているのですが、 PHPのスクリプトとして処理するプログラムが載っていません。 インターネットでいろいろと探したところ、ソースは公開されておらず、 どうやらかなり難しそうだという結論に至りました。 基礎から勉強して作り上げるには何行程度のプログラムになりますか? PHPを専門とされている方、よろしくお願いいたします。

  • PHP
  • 回答数3
  • ありがとう数4

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

  • ベストアンサー
  • ts3m-ickw
  • ベストアンサー率43% (1248/2897)
回答No.3

単にメール送信するだけならこの程度で動きます。 実際には漢字コードをJISに変換したり、いくつかの約束事をする処理が必要ですけど。 <html><body><?php if ($btn=="送信") mail ("送り先メールアドレス", "サブジェクト", $mail); ?> <form action="index.php" METHOD=post> <textarea name="mail"></textarea><input type="submit" name="btn" value="送信"> </form></body></html>

-q7P2izb__
質問者

お礼

御回答いただきましてありがとうございます。 メール送信コードの原型がそれなのですね。勉強になりました。 最初見たとき、すごい!の一言に尽きました。ありがとうございました。

その他の回答 (2)

回答No.2

「メールフォーム PHP」でGoogleで検索すると結構出てくると思います。 プログラムの行数で言うと、そんなにないはずですが、入力された、inputタグの中身の文字列が正しいものか(文字数が制限値以内か、入力がきちんとされているか)などの検証(バリデート)、実際にメールに送信するために、問題がないように不正な文字などを置換する処理(HTMLタグが挿入されていた場合は「<」を「&lt;」、「>」を「&gt;」に変換したりとか。) よく言われるCSRF対策のようなセキュリティ対策をする、スパム対策にCAPTCHA(画像認証)を入れる、など、盛り込む内容が多くなるとどんどん行数も増えます。 増えますが、そんなに長くはならないと思います。 メールフォームということですが、一番最後に、メールを送信するというところ意外では、掲示板(BBS)を作るとか、申し込みフォームを作るというのもほとんど同じです。 メールフォームにこだわらずに、フォームアプリケーション全般で探してみてはいかがでしょうか。 ちなみに、以前別の方が使い方(カスタマイズ方法)で質問をされていたメールフォームのURLが手元にあるのでご紹介。 『ReCube Form』 http://www.yumemaboroshi.net/cgi/us-re-detail1.php?mode=sample&s01=5266&hash=83a8c83fa9ed10f7a442fd64c9a9e043 『Magical Form』 http://magical-form.com/ 学習目的でないのであれば、このような完成されたものをご利用されるのも良いかと思います。

-q7P2izb__
質問者

お礼

御回答いただきまして、ありがとうございます。 さほど長くならないということで、もう少し勉強してみようと思います。 学習目的のためですので、せっかくURLを張っていただき有難いのですが、 もう少し時間をおいて考えてから、決めようと思います。 長文の詳しい説明どうもありがとうございます。

回答No.1

>PHPでメールフォームを作るのはどれほど難しいのでしょうか? 専門としてる方 じゃないけどぶっちゃけていえば超簡単。 そもそもソースはあちこちで公開されてますが・・。 基礎から勉強して作り上げるには何行程度のプログラムになりますか?  一行でかける。改行しなければww

-q7P2izb__
質問者

お礼

御回答いただきまして、ありがとうございます。 確か、レンタル系のメールサービスか、ソフトを新たに導入すれば、 1行で書けるかもしれません。検索不足だったのかもしれません。

関連するQ&A

  • PHPのメールフォームが動かない!

    プログラム言語はまったく初めてのPHP初心者です。 いきなり会社関係のサイトを管理する事になり サーバを移転したらメールフォームが動かなくなってとても困っています。 (前々任者が作ったPHPスクリプトなので、前任者もよくわかっていません) 状態は、フォームを送信すると、真っ白な画面になって何も表示されず、メールも送信されません。 移転前のサーバではちゃんと稼働していたらしいのですが… 書き替えたのはPHP本体のmailの送信先アドレスと、HTMLのaction=の後の本体スクリプトのアドレスだけです。 <form name="form1" method="post" action="./form.php"> mail関数は下のようになっています mail($mail,$subject,$message,$from,"-finfo@****.com"); include(THANKS); } 同じサーバにある、PHPの掲示板はちゃんと普通に稼働しています。 それから、いろんな初心者サイトを巡ってみたのですが、 スクリプト本体に、まだよく解らない構文もあります。 構文の一番最初が <?php $date = date ("Y-m-d"); になっているのですが、これは何をする構文でしょう? 前任者は「前のサーバで稼働していたから、サーバの問題じゃないか」 と、言っているのですが、もしそうならサーバの何が問題なのでしょう? なにしろスクリプトなどいじったこともない初心者なので、 わからない事だらけでとても困っています! 質問ばかりになってしまいましたが、どなたかよろしくお願いします!!

    • 締切済み
    • PHP
  • メールからphpスクリプト起動

    初めて質問させて頂きます。 レンタルサーバで、以下の処理を考えています。 1.メールを受信する 2.1をトリガーにしてphpスクリプトを起動する この処理は共有サーバでも実現可能でしょうか。

    • 締切済み
    • PHP
  • 実際のphpの運用について

    すいません。今htmlで書いただけのサイトを持っているのですが、 (今使っているさくらサーバーのレンタルサーバーでphpは使えます) 今度フォームを作り、phpで処理して出力するプログラムを作りました。 内容は自分で取った写真を日付順や季節順で並び替えるphpです。 (チェックボックスなどで選択し、画像を並び替えるプログラムです) 私は、phpは初めてで、今手元にあるのは test.html・・フォームなどを設置した通常のwebsitです。 test2.php・・フォームで送られた値を処理して結果を出力するプログラムです。 この二つをとりあえず、フリーソフトのffftpでアップしてみた所、上手く動きました。 たださくらのレンタルサーバーで「php.ini 設定ファイル編集」という項目があるのですが、これは 何もしなくて良いのでしょうか? 白紙の記述ページみたいなものなのですが・・。 とりあえずphpを動かすだけならphpのファイルごとアップロードしてしまえば良いものなのでしょうか?

    • ベストアンサー
    • PHP
  • PHPを使えるホームページスペースやレンタルサーバ

    PHPが基礎程度、使えるようになったので、 PHPを使って、ホームページを作りたいのですが、 どこに、PHPが使える無料のホームページスペースや レンタルサーバがあるのか、分かりません。 今は、Apache2を使って、localhostから、読み込んで、見ているのですが、インターネットに公開した ホームページが作りたいので、よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPでメール読込・・・

    いつも親切丁寧にありがとうございます。 PHPで受信したメールを読み込みしようとしています。 メールをパイプ出来る事がわかったのですが、紹介しているサイトの説明で1点わからない部分があります。 1 # mimeDecode.php が必要 (以下2行でインストール) 2 # # pear install -f PEAR-1.6.0 3 # # pear install Mail_Mime 参考にしているサイト(http://spinnen.jp/keitaip.htm)←無断掲載すいません。 mimeDecode.phpはゲットしましたが、2と3の【インストール】の意味がわかりません。 サーバーは【さくらインターネット】のレンタルサーバーを使用しています。 ここで言う【インストール】とは何をすれば良いのでしょうか? PHP.iniへの記載とかそんな事を示すのでしょうか? それではいつも質問がおおざっぱですが、なにぶん専門用語の知識が少ないのでご了承ください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPでフォームに自動入力

    PHP初心者です。 (1)フォームに手入力しsubmit (2)手入力の内容をファイルに保管 (3)よそのサーバのフォームを開きユーザ名/パスワードを入力しsubmit (4)パスワード入力後に展開されるフォーム(https)に(1)の手入力の内容を入力しsubmit (5)"(4)"でsubmitした結果で次に表示するフォームを決定したい  submitした結果はフォームに正常/エラーが表示されます 自サーバのWebフォームに入力された内容を他のサーバに反映したい。 サーバへの反映結果で次処理を変えたい。 他のサーバに反映させる手段はWebの入力フォームのみとなっています。 (3)(4)(5)をサーバで動作するPHPで自動的(トリガーは(1))に行いたいです。 (3)(4)(5)の実装方法をどなたかご伝授いただけないでしょうか。 サンプルのソースがあればありがたいです。 linuxサーバ(Fedora) PHP 5 質問内容が大きすぎ申し訳ないですが伝授いただけないでしょうか。

    • 締切済み
    • PHP
  • PHPメールフォームの設定

    コアサーバーに、PHPのメールフォームのインストールをしようとしていますが、 うまくいきません。 どなたか、ご教授頂ければ幸いです。 インストールしようとした、PHPメールフォームは、下記の2つです。 1.ES-FORM 2.Mailform+ Version1.24 (携帯対応埋め込み型PHPメールフォームスクリプト) どちらもサーバーに設置して、アクセスなどをしますが、 フォームがキチンを表示されません。 どちらも、.htaccessを設置したりして、試行錯誤していますが、うまく動きません。 ES-FORMは、フォームがうまく表示できないので、 サーバーの説明によるエラー対策を http://www.coreserver.jp/help/index.php/phperror/ を試みましたが、うまくいきません。 Mailform+ Version1.24 は、パスの設定がうまくいかないようです。 Warning: include() [function.include]: Unable to access /virtual/ken/public_html/■■■■.■■■■/mail/mfp/config.inc.php in /virtual/■■■■/public_html/■■■■/mail/index.php on line 5 などのエラーがでます。 いま、完全にはまってしまい、暗中模索になってしまいました。 恐縮ですが、素人ゆえ、わかりやすく解説、設定方法など ご教授頂ければ幸いです。 以上、よろしくお願いいたします。

    • 締切済み
    • PHP
  • PHPからメールを送る@さくらインターネット

    PHPを利用して、メールを送れません。 PHP4.3.10を使っています。レンタルサーバーとして、さくらインターネットのレンタルサーバー(プレミアム)を利用しています。 以下のようなスクリプトを書いたのですが、指定されたアドレスにメールが届いた気配がありません。何か、設定したりしないといけないとか、初歩的なミスかと思うのですが、何が悪いのでしょうか? <?php mb_language('Japanese'); mb_send_mail('xxx@xxx.xx.xx','やぁ','届いた?'); ?>

    • ベストアンサー
    • PHP
  • PHPによるフォームでのページジャンプ

    こちらで検索してみましたが、自身の知識も乏しく理解が出来なかった為、お尋ねさせて下さい。よろしくお願い致します。 携帯用のサイトを作成し始めまして、PHPで動作したいページがあります。レンタルサーバーさんである機能なのですが、自分でするにはどうして良いのか分からずにおります。書籍も購入してみましたが、自分のしたい事が何に当たるかすらまだ分からずに眺めるだけになってしまいました。 携帯レンタルサーバー「フォレスト」さんがされているブック機能というフォーム(accesskey)に閲覧者が表示したいページの数字を入力し、表示させるというPHPです。 indexなどは既にphpで運用を始めておりますが、ページ数が多いコンテンツに是非使いたいと思っております。 レンタルすれば万事解決ではございますが、ご教示の程、よろしくお願い致します。 既出で似たようなご質問があったのですが、自分の理解が出来なかった為、具体的なスクリプトのご提示やサイト様をお教え頂けると助かります。

    • 締切済み
    • PHP
  • PHPを使ったフォームについて教えてください。

    PHPを使ってフォームを作成し、入力された内容をメールで受取るプログラムを作っています。 1行毎にチェックボックスとプルダウンメニューがあり、チェックボックスにチェックを入れたものだけ、プルダウンメニューで選択されたものをメールで送るにはどうすればいいんでしょうか? 今、作っているものだとチェックされていない行のプルダウンメニューもメールで送られてきてしまいます。 ご教授お願いいたします。

    • 締切済み
    • PHP

専門家に質問してみよう