• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:form methodのwmorder送信について)

form methodのwmorder送信について

このQ&Aのポイント
  • 無料の転送サービスを行っていたサーバー屋がサービスをやめてしまい、会社では「自分で変更するか、後は市販の好きなカートを使って連結してください。」とのことなのですが、かごから送信一歩前まではJAVAで張りつけ、その先のデーター送信がわかりません。
  • 自分のホームページにその発信メールを変えようとしてます。私もあわててcgiを勉強、素人のためによくわかりません。action=mailto:'ooo@ooone.jpでもあれば、投稿フォームのhtmlの例文でわかるのですが、どこに送信htmlとcgiを張りつけたらいいかわかりません。
  • 困惑。公式は<form method="POST" name=MWOrderForm" onsubmit="return WMResetOrder();"<input type="hidden" value="http://www.oooo.com/page015.html" name="thanks URL"><input type="hidden" name="MAIL ADDRESS">(input type="submit" value="order" one click="WMOrderForm.action="http://www.ooooo.com/sendmail.asp';">をどのように書き換えればいいのでしょうか?

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

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

お疲れ様です。cgiの勉強を始めたばかりなのですね。 勉強のためなら、こつこつ作っていけば、いい課題になって、ちょうど よいのでしょうが、いきなり業務用とするには、それなりの体裁とか、 運用性、文字コード対策、セキュリティ対策とかいろいろ作りこまなければ ならないので、辛いでしょね。自分でやるしかないといったところですか? 私は、Perlは何となく嫌いなので、PHPでプログラムを作ってます。 phpの場合ちゃちゃとやるだけなら、phpの基本機能だけ使って、 受信処理だのエンコード・デコードだのメール送信だの関数 を呼ぶだけです。 (perlでも便利なライブラリ-がいろいろあったはずHTTPとかJcodeとか) php では、hoge.phpにPOSTされた内容は、何もしなくても $REQUESTという連想配列に全部入ってくるので、 printr($REQUEST)で何が送信されているのか、キーと値をチェックして、 queryデータを、parse_str()とかで、ローカル変数に分割格納 して、エスケープ処理とか文字コード処理とかも関数を呼ぶだけで 済ませ、メール本文内容は文字列変数として、内容の文字列や変数 の値も、文字列連結やprintf文で組み立てて、mb_send_mail 関数に あて先等とともに本文を渡して、そのまま日本語メール発信です。 (実際はもっとこまごまとした処理が付属しますが) ポケットリファレンスを見るだけで、この手のお手軽な物は作れます。  ※Perlだから難しいと言っている訳ではありません。

hikioto7
質問者

お礼

yyr446様 今回はいろいろのことを教えていただき本当にありがとうございます。早速お薦めのphpも勉強して見ようとおもいます。もう感謝、感謝です。わからないことがありましたらまた教えてくださいね。しかし、プログラミングは奥が深いですね。勉強して教えていただいたことをよく理解します。

hikioto7
質問者

補足

yyr446様  あなたに質問するといろいろ親切に教えていただけるのでありがたいです。phpにしてもまるで知りませんでした。いいことを教えていただきました。勉強になります。しかし「猪突猛進」にはびっくりしたでしょうね。私の場合は実は商売でホームぺージを市販のソフトを使って作り、現在運営しております。店のホームサイトは田舎において、東京のサーバー屋の送信サービスを利用しておりました。そこの廃止で田舎のサイトに送信をセットするので教えを乞うことにになりました。お客さんには現在は張りつけられた「注文書」を店のメールにコピー・アンド・ペーストで張りつけて注文メール送っていただいております。そう言うわけで緊急を要し、なんとか送信を自動化したかったわけでいろいろやってみたのですがだめなのでお知恵拝借で質問をだしました。サーバ屋のお薦めはどこかのカゴ・システムだけを借りてきてlinkすることをすすめてくれたのですが、ネックは送信だけですのでがんばってみました。そんなわけでshtml,perl/cgi,を勉強し始めたのもそれが目的でした。しかし、最近は「ibmのホームページビルダー」などを使わなくてもホームページが自分で自由にできるのにハマッテしまい、楽しくなり、プログラミングの海に漕ぎ出したところです。今回はいろいろのことを教えていただきありがとうございます。早速お薦めのphpも勉強して見ようとおもいます。もう感謝、感謝です。わかんないことがありましたらまた教えてください。

その他の回答 (2)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

詳細説明ありがとうございます。 なんとなく理解できたような気がします。(間違った理解かも?) 今まで、ajaは'sendmail.asp'というCGIを使って、WEBページからpostされ たデータ項目を読み、お宅様へのオーダーメールの形にして、送信して いたと理解しました。 ajaが無くなった場合、貴社のサイト(AKITA.COM)で、POSTされたデータを 受け取るCGI(PHPで作っても可)、例えばhoge.phpを作った場合、HTMLの記述は inputtype="submit"value="order"oneclick="WMOrderForm.action='http://AKITA.COM/hoge.php';"> となるだけです。 一方、hoge.phpでは、POSTされたデータを取得し、メールを作ってsendmailするなり、DBに格納するなり、といった処理を行う事になる のでは? それほど難しい、プログラムじゃ無いと思います。 sendmail.asp のソースは入手不可能なんですよね

hikioto7
質問者

補足

yyr446様 教えていただきありがとうございます。しかしまだcgiの勉強を始めたばかしなので生徒のほうが理解力がないのでhoge.phpにどのように書いたらいいかわかりません。hoge.phpに代入するように書くのでしょうか?[cgi/perlの作り方入門(kent著、技術評論社)]には「フォームメールを作ろうp.116~150」と言う項目があり、ライブラリの取り込み、戻り先のリンク、送信先アドレス、sendmailパス、フォームデコーダー、メール送信、確認画面と表題があり、次にフォームデコード、確認画面、画面表示、メール送信、メールの本文、jisコード変換、sendmail起動、完了メッセージ、htmlヘッダーと並んでおりますが、メールフォームの設定からメイン処理の定義、デコーダーサブルチンを書けばよいのでしょうか?

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

やりたい事の意味がよく掴めません。 「かごから送信一歩前まではJAVAで張りつけ、その先のデーター送信がわかりません」 ==>POSTするデータをフォームにセットするまでは、Javascriptで作った   という意味ですか? 「自分のホームページにその発信メールを変えようとしてます。」 ==>メールがどう絡んでくるのでしょう。自分のサイトにCGIを作成    したのですか?その処理内容は? POST要求先は、​http://www.ooooo.com/sendmail.asp でよいのですか?

hikioto7
質問者

補足

さっそくのお問い合わせアリガトウゴザイマス。詳しく説明します。 公式は<form method="POST" name=MWOrderForm" onsubmit="return WMResetOrder();" (1)<input type="hidden"value"​http://www.akita.com/page015.html"name="thanks​ URL”> (2)<input type="hidden"name="MAIL ADDRESS"> (3)<TEXTAREA COLS="80"ROWS="20"NAME="ORDER"READONLY>読み取り専用。間省略 (4)(inputtype="submit"value="order"oneclick="WMOrderForm.action="​http://www.ajia.com/sendmail.asp';"> ​やりたいことは(4)のhttp://www.ajia.com/sendmail.asp';で転送されてきていたものを直接に私どものホームぺージのAKITA.COM、またはBIGLOBEやGOOで受信したい。ありがとうメールはなくしてもかまいません。 今までは送信情報がサーバー屋アジア経由で来てました。(1)のTHANKSMAIL、もう一つは(2)のORDER情報です。2つとも転送メールでAJIA.COM経由で私どもに来ていたのですが、サーバーサービスをAJIAさんがやめてしまいましたので、今度は私どもが使っているホームぺージのあるAKITA.COMにメールを変えるか、さもなくばBIGLOBEとかGOOのような会社のメールで発信や受信をするのにはどうしたらいいでしょうか? (4)のAJIA.COM部分をどのように書き換えたらいいでしょうか? とにかく情報メールがどうしてもつながりません。注文情報は発信まぎわまではJAVA SCRIPTで書き込まれて読み取れるのですが、その情報を送信にのせて発信できず、情報が当方にきません。つながりません。JAVA SCRIPTを使っているのでCGIでないのでACTION もないしさっぱりわかりません。 (1)のinput文は私のホームページのPAGE15.htmlのthanksメールを受けてAJIAからお客にありがとうメールが送信されるものらしい、2番目のinput文で私どものメールアドレスにWMORDERFORMの情報メールがajia.com経由で発信され到着。 (4)のinput送信文で今まではサーバー屋のhttp://www.ajia .com/sendmail.asp'に送信しておりましたが、それを今度はAKITA,COMに変えて送信するのにはどうしたらいいでしょうか どのような記述で書いたらAKITA.COMにメールが直接来るでしょうか?java scriptで書かれている物は別にありますが送信に関係あるのはここの(4)部分だけです。よろしくお願いします。

関連するQ&A