javascriptで作ったフォームをphpに送信したいのですが、上手く送信できません。
どのようにすれば上手く送信することができるでしょうか?
回答お願いします。
javascript側のソース
<body>
<form name="nform1" method="POST" action="./kaitou1.php" enctype="text/plain">
<p>問1</p>
<p>
(1)<input type="text" name="kaitouran11" size="20">
(2)<input type="text" name="kaitouran12" size="20">
(3)<input type="text" name="kaitouran13" size="20">
(4)<input type="text" name="kaitouran14" size="20">
</p>
</form>
<form name="nform2" method="POST" action="./kaitou1.php" enctype="text/plain">
<p>問2</p>
<p>
(1)<input type="text" name="kaitouran21" size="20">
(2)<input type="text" name="kaitouran22" size="20">
(3)<input type="text" name="kaitouran23" size="20">
(4)<input type="text" name="kaitouran24" size="20">
</p>
</form>
<form name="nform3" method="POST" action="./kaitou1.php" enctype="text/plain">
<p>問3</p>
<p>
(1)<input type="text" name="kaitouran31" size="20">
(2)<input type="text" name="kaitouran32" size="20">
(3)<input type="text" name="kaitouran33" size="20">
(4)<input type="text" name="kaitouran34" size="20">
</p>
</form>
<input type="button" value="送信" onClick="send()">
</body>
php側のソース
<body>
<p>問1</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran11'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran12'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran13'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran14'], ENT_QUOTES, 'UTF-8')); ?>
</p>
<p>問2</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran21'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran22'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran23'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran24'], ENT_QUOTES, 'UTF-8')); ?>
</p>
<p>問3</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran32'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran33'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran34'], ENT_QUOTES, 'UTF-8')); ?>
</p>
</body>
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
結論から述べると、以下の回答No.1が事実を物語っています。
http://oshiete.goo.ne.jp/qa/8145396.html
複数のフォームを1つのリクエストにまとめることはHTTPの仕様上不可能です。素直にAjaxで分割送信させましょう。単に「対応しやすい」「確認しやすい」だけでとどめられると何か納得がいかないので一応確認させていただきます。
問1に全て回答
↓
Ajaxで送信させる
↓
問2に全て回答
↓
Ajaxで送信させる
↓
採点結果をチェック
ということをしたいんでしょうか・・・?
No.4
- 回答日時:
>> htmlからphpに
HTML全部手打ちするよりも配列データとして格納しておいたほうがラクだと思いませんか?ファイルを分けるにしても、PHPファイルからPHPファイルへ送信する形を取ると思います。わざわざ静的なHTMLファイルを手作業で作るメリットは皆無と言えるでしょう。
>> 複数個フォーム
他の回答者さんからも指摘がありますが、どうしてフォームを分ける必要があるんでしょうか?
<script type="text/javascript">
document.forms['nform1'].submit();
document.forms['nform2'].submit();
document.forms['nform3'].submit();
</script>
のように全て送信するなら分けても分けなくても同じ、というか普通は分けません・・・私が前の回答で提示したサンプルで出力されたHTMLソースを見てもらっても分かると思いますが、「複数のfieldset要素を外側から1つのform要素に含める」という形を取っています。
form要素を分けるときは、「問2だけを送信」といった形を取りたいときだけです。
この回答への補足
>PHPファイルからPHPファイルへ送信する形
たしかに、フォームとかだけを送るならその方式を持ち要りますがgoogleマップなどのものはPHPではなくajaxを持ち要りますよね。その一部の中身について今回質問させていただいているのです。ですのでhtmlから行おうと考えているのです。
>> 複数個フォーム
今回は全フォームを送りますが、form要素を分けるときは、「問2だけを送信」といった形にも対応しやすいメリットがあったりプログラムの確認がしやすいなどのメリットがあります。
No.3
- 回答日時:
この回答への補足
回答ありがとうございます。
形式としては教えていただいたurlのような内容ですが、
コンセプト的なものは似ているのですが
htmlからphpに複数個フォームを目的とする場所に送信したいの
です。
No.2
- 回答日時:
javascriptが設定されていないことはおいておいて
とりあえずは、formを一つにして普通にサブミットするところから始めてください
問いごとにformをわけてしまえば結局問いごとにしか値はとびません
この回答への補足
サブミットするというのはボタン部分の
onclick→onsubmitでしょうか?
それとも、
<script type="text/javascript">
document.forms['nform1'].submit();
document.forms['nform2'].submit();
document.forms['nform3'].submit();
</script>
というようにすることでしょうか?
後者であるなら現在上記のようにしてありますが、
上手く目当ての場所にフォームが送信できません(ページは切り替わるのですが...)
No.1
- 回答日時:
とりあえず。
。。> javascript側のソース
javascript が見当たらんとです。
かろうじて「 onClick="send()" 」で、その痕跡があるぐらい。
あと、まぁ、PHPの書き方がなげやり過ぎ。
JavaScriptとか「この言葉が何を指しているのか」とか いろいろ ちゃんと理解してからにした方がいい気がする。
この回答への補足
すいません。日本語がおかしくて...
javascriptという表現おかしいですよね
結局何がやりたいかというと
htmlからphpにフォームを送信したいということです。
しかし、今回は複数個フォームで用意しているので
上手くひとつのときみたいに値がphpに渡らなくて困っているのです。
ソースを訂正させていただくと
htmlのソース
<script type="text/javascript">
document.forms['nform1'].submit();
document.forms['nform2'].submit();
document.forms['nform3'].submit();
</script>
javascript側のソース
<body>
<form name="nform1" method="POST" action="./kaitou1.php" enctype="text/plain">
<p>問1</p>
<p>
(1)<input type="text" name="kaitouran11" size="20">
(2)<input type="text" name="kaitouran12" size="20">
(3)<input type="text" name="kaitouran13" size="20">
(4)<input type="text" name="kaitouran14" size="20">
</p>
</form>
<form name="nform2" method="POST" action="./kaitou1.php" enctype="text/plain">
<p>問2</p>
<p>
(1)<input type="text" name="kaitouran21" size="20">
(2)<input type="text" name="kaitouran22" size="20">
(3)<input type="text" name="kaitouran23" size="20">
(4)<input type="text" name="kaitouran24" size="20">
</p>
</form>
<form name="nform3" method="POST" action="./kaitou1.php" enctype="text/plain">
<p>問3</p>
<p>
(1)<input type="text" name="kaitouran31" size="20">
(2)<input type="text" name="kaitouran32" size="20">
(3)<input type="text" name="kaitouran33" size="20">
(4)<input type="text" name="kaitouran34" size="20">
</p>
</form>
<input type="button" value="送信" onClick="send()">
</body>
phpのソース
php側のソース
<body>
<p>問1</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran11'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran12'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran13'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran14'], ENT_QUOTES, 'UTF-8')); ?>
</p>
<p>問2</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran21'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran22'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran23'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran24'], ENT_QUOTES, 'UTF-8')); ?>
</p>
<p>問3</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran32'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran33'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran34'], ENT_QUOTES, 'UTF-8')); ?>
</p>
</body>
補足としてphpのソースはこのような書き方しか現状知らないので
なげやりと抽象的おっしゃられても困ります。具体的にどのように修正すればいいのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTMLのリンクをクリックするこ...
-
DBの値をチェックボックスに反...
-
PHP ボタンが押されたら処理を...
-
HTMLで前の画面に戻る時、入力...
-
変数の書き方について
-
テキストボックスに初期値を入れる
-
ラジオボタンを押すと、表示が...
-
リストボックス 複数選択のデ...
-
$_POSTを連想配列で取得したい!!
-
一つのformで、複数のaction指定
-
チェックボックスのvalueに変数...
-
フォームボタンを押すたびに数...
-
検索時の選択内容を保持する方法
-
ボタンをクリックでPHP文を実行
-
php メールフォーム プルダウ...
-
【smarty】予約変数に可変変数
-
高高兴兴は高兴と何が違います...
-
フォームのPOST情報が渡らない?
-
phpで、フォームのラジオボタン...
-
バックスラッシュの対策について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTMLで前の画面に戻る時、入力...
-
<input type="hidden" >で配列...
-
検索時の選択内容を保持する方法
-
PHP ボタンが押されたら処理を...
-
HTMLのリンクをクリックするこ...
-
フォームへの前回入力値をクリ...
-
PHPで画像の渡しが上手く行きま...
-
UPDATEの記述について
-
POSTデータのNAME属性をVALUEに...
-
ラジオボタンをsessionで使いたい
-
テキストボックスに初期値を入れる
-
画面が更新されてもチェックボ...
-
PHPでクリックするたびに変数を...
-
DBの値をチェックボックスに反...
-
同じページでフォームデータを...
-
smartyでチェックボックスをチ...
-
入力フォーム→確認画面→送信画...
-
チェックボックスによる検索(...
-
パラメーターを隠す
-
【PHPチェック】ラジオボタンが...
おすすめ情報