• ベストアンサー

アンケート項目を複数のページで作成したいのですが

アンケート項目を複数のページで作成したいのですが、 私の知識では、何十もの質問欄の文字入力の結果を とても長い一つのページに詰め込む以外に 方法を考え付きません。 無料のサイトでホームページを作る予定ですので 自前で特別なソフトを走らせることは無理と思います。 Javascript であれば、何とか理解できると思います。 70項目程度の文字入力の結果を メールで送信するようにしたいのですが、 どのような方法を用いれば 複数のページに入力された文字データーを 1通のメールとして送信できるのでしょうか。 よろしくお願いします。

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

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.4

>アンケート項目を複数のページで作成したいのですが、私の知識では、何十もの質問欄の文字入力の結果をとても長い一つのページに詰め込む以外に方法を考え付きません。 >ユーザー側がどのようなコードを書けば良いかという質問でした。  この二つは矛盾しています。複数のページで作成するためには、必ずCGIを使用することになります。様々な方法がありますが [1ページ目] フォームからCGIに送信 [2ページ目] 受け取ったデータを隠しデータにして新しいフォームを作成 [3ページ目] 受け取ったデータを隠しデータにして新しいフォームを作成 ・・・ [最終]受け取ったデータを隠しデータにして、確認フォームを作成しそれを既存のCGIに送信 と言う手順になります。 [例]以前回答した   ⇒CGIでラジオボタンの選択結果を保持する (1/2) - CGI - 教えて!goo( http://okwave.jp/qa/q8237906.html )  一枚のHTMLを複数のページのように見せる方法はあります。

その他の回答 (3)

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.3

javascriptでメール送信はすべきではありません。様々な理由がありますが省きます。 サーバー側で、いわゆるメールフォームを処理するプログラムが必要です。 ・サーバーでCGIの実行が許されていること   あわせてsendmailやqmailと言ったMTA(メール転送プログラム)が使えること とあわせて、プログラムを作る能力が必要です。  無料サーバーでCGIが使えるところは少ないでしょう。  Perlなどのプログラム言語は自身で習得してください。   プログラムの程度としたら、初歩的なレベルです。

mqm
質問者

補足

サーバー側でメールフォームが用意されていますので、 ユーザー側がどのようなコードを書けば良いかという質問でした。 よろしくお願いします。

  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.2

メールフォームのサービスを使う以外は、通常の無料ホームページサービスで実現できる範囲で三つほど 案1 CGI が使えるなら、複数ページに分割して <input type=hidden> で入力済みの値を持ちまわす pageA.cgi : <form action=pageB.cgi><input name=hoge> pageB.cgi : <form action=pageC.cgi><input name=hoge type=hidden value=pageAの入力値> pageC.cgi : <form action=メールフォーム><input name=hoge type=hidden value=pageAの入力値> 案2 「タブメニュー」を実装して、一つのページを擬似的に複数ページっぽく見せる 例) http://5am.jp/jquery/jquery_ui_tabs/ 案3 いっそのことフォーム入力用の便利なJSライブラリを導入する 例) http://tympanus.net/Tutorials/FancySlidingForm/

mqm
質問者

補足

ご回答ありがとうございました。 案1が使えそうなので、これから試してみようと思います。 案3はError 表示が出ました。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

メールの送信までするのであれば サーバー側でうごくプログラムが必要になりそうです