携帯用CGIフォームの修正(戻る)ボタンについて

このQ&Aのポイント
  • 携帯用CGIフォームの修正(戻る)ボタンが機能しない問題について
  • 携帯用のメールフォーム作成時に、フォームの修正(戻る)ボタンが正常に動作しない問題が発生しています
  • 確認画面のソースコードには関連する記述があるかもしれませんが、どのような記述をすれば修正ボタンを実装できるのかわかりません
回答を見る
  • ベストアンサー

携帯用CGIフォームの修正(戻る)ボタンについて

無料で配布されたCGIで携帯用のメールフォームを作っています。 フォームに入力後〔確認画面へ進む〕ボタンを押してエラーがあればフォームに自動で戻しエラー表示をしています。(入力内容を維持したまま戻されます) ここまではテンプレートでできました。 しかし、送信前の確認画面で、内容を修正するためのボタンがありません。 3つ作ったフォームの内の2つは携帯の戻るボタンで内容を維持したまま戻れたのですが、スクロールをしなければならない程縦長のフォームだけ、どういう訳か携帯の戻るボタンを押しても入力フォームに戻れないです。スクロールの上の方に上がるだけです。 そこで、確認画面に内容を修正するためのボタンを設置しようと考えているのですが、どのような記述をすれば良いのでしょうか? ※内容は維持したまま修正したいです。 確認画面のソースにはこのような記述があったのですがこれが関係していますでしょうか。 <!-- TMPL_LOOP NAME=loop_list --> <input type="hidden" name="<!-- TMPL_VAR NAME=key ESCAPE=HTML -->" value="<!-- TMPL_VAR NAME=value ESCAPE=HTML -->"> <!-- /TMPL_LOOP --> 大変お手数ですが教えていただけると助かります。 宜しくお願い致します。

  • CGI
  • 回答数1
  • ありがとう数0

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

  • ベストアンサー
回答No.1

上に上がるだけになるのは、本当に携帯の戻るボタンですか? 画面に表示される戻るボタンじゃないですか? もしそうだとしたら、その画面だけ戻るボタンがjavascriptの戻る機能になっています。 インターネットで戻るで内容を維持するには3つの考え方があります。 キャッシュ ・・・表示した画面や入力した内容がパソコンや携帯に残っているので、戻った時に表示される。 クッキー ・・・・プログラムがパソコンや携帯の中に強制的にデータを保存させ、表示させる。通常戻るでこの機能は使わない。 クエリ  ・・・・戻るボタンを押したとき、画面にあるデータを一緒に戻す。 いずれも、テンプレートを変更するだけでは、データを残すことはできません。 基本的に携帯は、携帯の中にキャッシュが残るので携帯の戻るボタンで戻ってデータが残ります。 一方、WEB画面の戻るボタンは、「戻る」といっても新しい画面なので、戻るボタンを押したときにクエリでデータを送信なければなりません。 そのプログラムがそこまで考えて作られているかどうかわかりませんが、ないなら戻るボタンは作れません。

関連するQ&A

  • 携帯サイトの入力フォームについて!修正画面編

    こんにちわ! お世話になります。 すごく初歩的な質問になってしまいます。 入力フォームを作っているんですけど・・。 入力→確認→修正→完了 ぜんぶ1ページにまとめて作ってるんですけど現在、確認画面から修正画面に行くときにGETメソッドになってしまいます。 確認画面のソースです。 <form id="form1" name="form1" method="post" action="Auction.php?1=<?=$_POST['1'];?>"> 入力内容:<?=$_POST['1'];?> <input type="submit" name="Submit" value="修正" /><input type="submit" name="Submit" value="完了" /> </form> せっかくPOSTで受け取っているのに修正するときはGETになっていてちょっとおかしいですよね。。。 いまいち入力フォームは苦手項目なので分かりません。。。

    • ベストアンサー
    • PHP
  • メールフォームでの送信確認から修正ボタンで戻る方法

    現在、メールフォームを作っています。 とりあえず完成し、動作は全く問題ありません。 ただ、「送信ボタン」と確認画面からの「修正する」ボタンを画像にしています。 「修正する」ボタンを画像にするとなぜか送信が完了してしまいます。 下記は「修正する」ボタンのソースです。 <input type="image" name="check0" value="修正する" src="images/form_btn_back.jpg" width="100" height="35" alt="修正する"> 念のため「送信ボタン」のソースも書いておきます。 <input name="submit" type="image" value="この内容で送信する" src="images/form_btn_send.jpg" alt="この内容で送信する"> 「修正する」ボタンのtypeをsubmitにすると前の入力画面に戻ります。 原因がわからないので詳しい方、ご教授をお願いいたします。

  • HTML::TemplateのTMPL_LOOPについて

    PerlモジュールのHTML::Templateを利用していますが、多重ループの書き方がわかりません。 以下のようなループがある場合、どのようにperlを記述したらいいでしょうか。 <TMPL_LOOP NAME=LOOPA> <TMPL_VAR NAME=title> <TMPL_LOOP NAME=LOOP_GUEST> <TMPL_VAR NAME=guest_name> </TMPL_LOOP> <TMPL_VAR NAME=time> </TMPL_LOOP> ドキュメントを見ると下記のように記述するようですが、下記を値それぞれではなく、配列を利用する場合にはどのように記述すれば良いでしょうか。 $template->param(LOOP => [ { name => 'Bobby', nicknames => [ { name => 'the big bad wolf' }, { name => 'He-Man' }, ], }, ], );

    • ベストアンサー
    • Perl
  • スクロールバー項目ごとに、表示するものをかえる。

    こんにちは。 CGIでHTML::TEMPLATEをつかってプログラムをかいています。 そこで、スクロールバーを用いて、選択したものによって表示する内容を変えようと思っているのですが うまくいきません.私が現在書いたものはこのようなかんじです。 function filter(){ var tmp='<TMPL_VAR NAME=GETRIEBE> '; document.getElementById('waelen').innerHTML=tmp; } <form name="select"> <select name="waelen" onCharge="filter();"> <option value="werkstoff">werkstoff</option> <option value="getriebe">getriebe</option> </select> </form> <table><TMPL_LOOP NAME=ALLDATA> <tr><td><TMPL_VAR NAME=DATEI> </td> <span id="waelen"><td><TMPL_VAR NAME=WERKSTOFF> </td></span> ..... というふうに書いていっています。項目は本当はもう少しありますが。省略しました。 これを実装すると、スクロールバーから、項目を選択した際に、<TMPL_VAR NAME=WERKSTOFF>内容がかわるはずなのですが、 うまくいきません。最初の項目だけが、消されてしまいます。おそらく最初に画面を切り替えた時しか データがうけとれないのだとおもいます。 そこで、スクロールの項目を選ぶと、その項目に関連する内容が表示できたりできますか? ようするに、最初からHTMLで4パターンぐらいのテーブルを作っておき、 選択内容によって、コメントアウトをはずすような仕組みです。(そうしないと、HTMLテンプレートのせいでうまくデータがとれないきがしています。) なにか,いい方法があればよろしくお願いします。Javascriptに関する知識はあまりもっていないです。

  • メールフォームの確認画面の表示について

    ホームページにメールフォームを設置しているのですが、入力項目が多く内容確認ボタンがページの下の方にあるためか、内容確認ボタンを押して確認画面が表示されると、真っ白な状態になってしまいます(ページの下の方が表示されるため。上にスクロールすると確認画面が現れます。) そこで、内容確認ボタンを押してページが切り替わった時にそのページの一番上の位置が表示されるような設定方法を教えていただければと思います。 ちなみにメールフォームは有料のフォームズです。 どうぞ宜しくお願いいたします。

  • 携帯サイトの戻るボタン

    お世話になります。 現在、入力フォームの携帯サイトをPHPで製作しているのですが、 入力ページで次へボタンが押された場合に入力内容を検証し、 入力エラーがあれば、エラー画面を表示し、 前の画面に戻らせるという処理を行おうとしています。 エラー画面から戻る際に、設置した戻るボタン(入力画面にsubmitする)で戻る場合は、 入力画面がリロードされ、入力内容をSessionから再表示することができたのですが、 携帯(docomo)の戻るボタン(左矢印)で戻ると、入力ページがリロードされない、かつ以前に入力した内容がクリアされてしまいます。 携帯の戻るボタンでもリロードされるよう、キャッシュをクリアする処理を入れて、以下のようなHTMLを出力するようにしてみたのですが、うまくいきませんでした。 a.php <html> <head> <meta http-equiv="Content-type" content="text/html; charset=Shift_JIS"> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <title>入力フォーム</title> </head> <body> <form action="b.php" method="post"> <input type="text" istyle="1" name="input1" size="20" value="<?php $_SESSION['input1']; ?>"> <p> <input type="submit" value="次へ" name="submit"> </p> </form> </body> </html> 原因・やり方をご存知の方がおりましたらご教示していただけないでしょうか。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • HTML::Templateのループと配列のハッシュの作成

    下記の?????の所にpushで配列のハッシュを作成しようと考えていましたが、うまくいきません。 下記のソース自体が的外れでしたら申し訳ございません。?????以外の場所も指摘して頂ければ幸いです。 よろしくお願い致します。 <TMPL_LOOP NAME="loop"> <TMPL_VAR NAME="one"><BR> <TMPL_VAR NAME="two"><BR> <TMPL_VAR NAME="three"><BR> </TMPL_LOOP> use HTML::Template; @data = ('aa<>ab<>ac','ba<>bb<>bc','ca<>cb<>cc'); foreach $xxx (@data) { my ($one,$two,$three) = split(/<>/,$xxx); ???????????????????? } my $template = HTML::Template->new(filename=>'sample.html'); $template->param(loop=>\@loop); print "Content-Type: text/html\n\n"; print $template->output;

    • ベストアンサー
    • Perl
  • フォームにて

    フォームであるボタンを押したら、そのボタンの値("name"等)を変数に代入し、その変数の値を維持したまま画面を再描画したいのですがどうしたらよいのでしょうか? onclick="func()"を使ってみたのですが、うまく代入されませんでした。 よろしければ教えてください。 お願いします。

    • ベストアンサー
    • PHP
  • お問い合わせフォーム。確認画面でつまずいてます。

    phpでフォームを作成しています。フォーム確認画面で思うように動作しません。 確認画面の「修正する」ボタンを「input type="submit"」から「input type="image"」に変更し、画像ボタンとしたいです。 ソースを下記のように書き換えると、前画面に戻らず、そのまま送信してしまいます。 <input type="hidden" name="status" value="send">'."\n".'<input type="submit" value="送信する"> <input type="submit" name="edit" value="修正するぞおお"> ↓ <input type="hidden" name="status" value="send">'."\n".'<input type="image" name="send" src="../images/send_btn.gif" value="送信する"> <input type="image" name="edit" src="../images/reset_btn.gif" value="修正するぞおお'"> 「修正する」ボタンを画像に変更するには、他に追記する必要があるのでしょうか? 正しい動作は、「修正する」ボタンを押すと、入力項目を残した状態のフォームへ戻ります。 その動作もphpのどこに記載されているのか、今いち分かっておりません・・・。 「魔法のメールフォーム MagicalForm」http://magical-form.com/ を利用しています。 初心者で申し訳ないのですが、どうぞよろしくお願いいたします。

    • 締切済み
    • PHP
  • 携帯画面用のメール送信フォームの作成

    携帯電話の画面のメール送信フォームってのを作りたいです。 携帯画面で各項目を入力 例) 名前 山田太郎 フリガナ ヤマダタロウ ↓ 確認ボタンを押すと「項目名」「入力内容」「送信ボタン」が表示される ↓ 送信ボタンを押すと指定されたアドレスにメールが送信される このような事って素人じゃ難しいですか? ○○と○○を使えば簡単に出来るって方法ありませんか? 宜しくお願いします。

    • ベストアンサー
    • HTML

専門家に質問してみよう