質問するログイン新規登録

質問編集履歴

6

訂正

2018/03/05 01:51

投稿

MeB
MeB

スコア104

title CHANGED
File without changes
body CHANGED
File without changes

5

訂正

2018/03/05 01:51

投稿

MeB
MeB

スコア104

title CHANGED
File without changes
body CHANGED
@@ -1,54 +1,53 @@
1
- [https://teratail.com/questions/115805](https://teratail.com/questions/115805)
2
- こちらの質問の続きになってしまうのですが、
3
- どのように同じページに値を送受信できますでしょうか?
4
- 現在phpの記述はないので、このようなかんじにする程度で構いません。
5
- ページ切り替え意外やったことがなく苦戦しています。調べてもなかなかたどり着けず…
6
- ご教示お願いします。
7
-
8
1
  ```html
9
2
  <!-- エリア1 -->
10
3
  <div class="form-area active">
11
4
  <h3 class="blue-title">お問い合わせフォーム</h3>
12
- <form action="index_submit" method="get" accept-charset="utf-8">
5
+ <form action="" method="post" nema="form">
13
6
  <p>お名前<span>(必須)</span></p>
14
- <input type="text" name="Person_name">
7
+ <input type="text" name="person_name" value="">
15
- <p>ご連絡先 TEL<span>(必須)</span></p>
16
- <input type="tel" name="tel">
17
8
  <p>ご連絡先 Email<span>(必須)</span></p>
18
- <input type="email" name="mail">
9
+ <input type="email" name="mail" value="">
19
- </div>
20
10
  <p>お問い合わせ内容<span>(必須)</span></p>
21
11
  <textarea name="inquiry_text"></textarea>
12
+ <div class="submit"><button><img src="images/check.png" alt="送信" type="submit"><span>確認画面</span></button></div><!-- このボタンを押すとエリア2が表示される -->
22
13
  </form>
23
- <div class="submit"><button>確認画面</button></div><!-- このボタンを押すとエリア2が表示される -->
24
14
  </div>
25
15
 
16
+ <?php
17
+ // フォームのボタンが押されたら
18
+ if ($_SERVER["REQUEST_METHOD"] == "POST") {
19
+ // フォームから送信されたデータを各変数に格納
20
+ $person_name = $_POST["person_name"];
21
+ $email = $_POST["email"];
22
+ $inquiry_text = $_POST["inquiry_text"];
23
+ }
24
+ ?>
25
+
26
- <!-- エリア -->
26
+ <!-- エリア2 -->
27
27
  <div class="form-area">
28
28
  <h3 class="blue-title">お問い合わせ内容 確認画面</h3>
29
29
  <p class="supplement">お問い合わせ内容は以下でよろしいでしょうか。<br>よろしければ「 送信する 」ボタンを押してください。</p>
30
- <form action="index_submit" method="get" accept-charset="utf-8">
30
+ <form action="index_submit" method="get">
31
31
  <p>お名前</p>
32
- <p><!-- ここに入力データを受け取る --></p>
32
+ <p><?php echo $person_name; ?></p>
33
- <p>ご連絡先 TEL</p>
34
- <p><!-- ここに入力データを受け取る --></p>
35
33
  <p>ご連絡先 Email</p>
36
- <p><!-- ここに入力データを受け取る --></p>
34
+ <p><?php echo $email; ?></p>
37
35
  <p>お問い合わせ内容</p>
38
- <p><!-- ここに入力データを受け取る --></p>
36
+ <p><?php echo $inquiry_text; ?></p>
39
- </form>
40
37
  <div class="submit-box">
41
- <button>もどる</button><!-- このボタンを押すとエリアが表示される -->
38
+ <button><img src="images/back.png" alt="送信" /><span>もどる</span></button><!-- このボタンを押すとエリア1が表示される -->
42
- <button>送信</button><!-- このボタンを押すとエリアが表示される -->
39
+ <button><img src="images/send.png" alt="送信" /><span>送信</span></button><!-- このボタンを押すとエリア3が表示される -->
43
40
  </div>
41
+ </form>
44
42
  </div>
45
43
 
46
- <!-- エリア -->
44
+ <!-- エリア3 -->
47
- <div class="form-area">
45
+ <div class="form-area">
48
- <h3>送信しました。</h3>
46
+ <h3 class="blue-title">送信しました。</h3>
49
- <div class="submit-end"><button>フォーム入力に戻る</button></div><!-- このボタンを押すとエリアが表示される -->
47
+ <div class="submit-end"><button><img src="images/back.png" alt="送信" /><span>フォーム入力に戻る</span></button></div><!-- このボタンを押すとエリア1が表示される -->
50
48
  </div>
51
49
  ```
50
+
52
51
  ```js
53
52
  $(function(){
54
53
  $('button').on('click',function(){
@@ -67,7 +66,15 @@
67
66
  });
68
67
  });
69
68
  ```
69
+ 現在このようなコードになっています。(jsは表示切り替えのみです。)
70
70
 
71
+ この状態で、エリア1で入力した情報をページ遷移をせずに
72
+ エリア2に反映させることは可能でしょうか?
73
+ 加えてその情報を引き継いだままメールを送信することは可能でしょうか?
74
+ 調べてみましたがajaxを使うのが一般的な気がしますが、ajaxを扱ったことがなく
75
+ どう調べていいかも不明なため質問いたしました。
76
+ ご教授よろしくお願いいたします。
77
+
71
78
  したい動きをしているサイトを見つけたので貼っておきます。
72
- 以下のページの下にあるフォームのような動きをしたいす。
79
+ 以下のページの下にあるフォームのような動きを実現したいと考えています。
73
80
  [https://mining.gmo.jp/](https://mining.gmo.jp/)

4

訂正

2018/03/05 01:51

投稿

MeB
MeB

スコア104

title CHANGED
File without changes
body CHANGED
@@ -70,4 +70,4 @@
70
70
 
71
71
  したい動きをしているサイトを見つけたので貼っておきます。
72
72
  以下のページの下にあるフォームのような動きをしたいです。
73
- https://mining.gmo.jp/
73
+ [https://mining.gmo.jp/](https://mining.gmo.jp/)

3

訂正

2018/03/05 00:13

投稿

MeB
MeB

スコア104

title CHANGED
File without changes
body CHANGED
@@ -66,4 +66,8 @@
66
66
  }
67
67
  });
68
68
  });
69
- ```
69
+ ```
70
+
71
+ したい動きをしているサイトを見つけたので貼っておきます。
72
+ 以下のページの下にあるフォームのような動きをしたいです。
73
+ https://mining.gmo.jp/

2

ていせい

2018/03/05 00:03

投稿

MeB
MeB

スコア104

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,9 @@
1
1
  [https://teratail.com/questions/115805](https://teratail.com/questions/115805)
2
2
  こちらの質問の続きになってしまうのですが、
3
3
  どのように同じページに値を送受信できますでしょうか?
4
+ 現在phpの記述はないので、このようなかんじにする程度で構いません。
5
+ ページ切り替え意外やったことがなく苦戦しています。調べてもなかなかたどり着けず…
6
+ ご教示お願いします。
4
7
 
5
8
  ```html
6
9
  <!-- エリア1 -->

1

訂正

2018/03/02 10:45

投稿

MeB
MeB

スコア104

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,9 @@
1
+ [https://teratail.com/questions/115805](https://teratail.com/questions/115805)
2
+ こちらの質問の続きになってしまうのですが、
3
+ どのように同じページに値を送受信できますでしょうか?
4
+
1
5
  ```html
6
+ <!-- エリア1 -->
2
7
  <div class="form-area active">
3
8
  <h3 class="blue-title">お問い合わせフォーム</h3>
4
9
  <form action="index_submit" method="get" accept-charset="utf-8">
@@ -12,40 +17,50 @@
12
17
  <p>お問い合わせ内容<span>(必須)</span></p>
13
18
  <textarea name="inquiry_text"></textarea>
14
19
  </form>
15
- <div class="submit"><button><img src="images/check.png" alt="送信" /><span>確認画面</span></button></div>
20
+ <div class="submit"><button>確認画面</button></div><!-- このボタンを押すとエリア2が表示される -->
16
21
  </div>
17
22
 
23
+ <!-- エリア2 -->
18
24
  <div class="form-area">
19
25
  <h3 class="blue-title">お問い合わせ内容 確認画面</h3>
20
26
  <p class="supplement">お問い合わせ内容は以下でよろしいでしょうか。<br>よろしければ「 送信する 」ボタンを押してください。</p>
21
27
  <form action="index_submit" method="get" accept-charset="utf-8">
22
- <p>会社名</p>
23
- <p>xxxxxxxxxx株式会社</p>
24
- <p>部署名</p>
25
- <p>xxxxxxxxx</p>
26
28
  <p>お名前</p>
27
- <p>xxxx xxxx</p>
29
+ <p><!-- ここに入力データを受け取る --></p>
28
30
  <p>ご連絡先 TEL</p>
29
- <p>03-xxxx-xxxx</p>
31
+ <p><!-- ここに入力データを受け取る --></p>
30
32
  <p>ご連絡先 Email</p>
31
- <p>xxxx@hoge.jp</p>
32
- <p>ご利用中・ご検討の証明書の枚数</p>
33
+ <p><!-- ここに入力データを受け取る --></p>
33
- <p>2</p>
34
34
  <p>お問い合わせ内容</p>
35
- <p>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<br>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx<br>xxxxxxxxxxxxxxxxxxxxx<br>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx<br>xxxxxxxxxxxxxxxxxxxxxxxx</p>
35
+ <p><!-- ここに入力データを受け取る --></p>
36
36
  </form>
37
37
  <div class="submit-box">
38
- <button><img src="images/back.png" alt="送信" /><span>もどる</span></button>
38
+ <button>もどる</button><!-- このボタンを押すとエリア1が表示される -->
39
- <button><img src="images/send.png" alt="送信" /><span>送信</span></button>
39
+ <button>送信</button><!-- このボタンを押すとエリア3が表示される -->
40
40
  </div>
41
41
  </div>
42
42
 
43
+ <!-- エリア3 -->
43
44
  <div class="form-area">
44
- <h3 class="blue-title">お問い合わせいだき<br>誠にありがとうございます</h3>
45
+ <h3>送信しまし</h3>
45
- <p class="supplement">この度は、GMOグローバルサインのクーポン情報について<br>お問い合わせいただき、どうもありがとうございます。</p>
46
- <p class="supplement">担当者より追ってご連絡いたします。<br>早期のご連絡を心がけますので、今しばらくお待ち下さい。</p>
47
- <p class="supplement">万が一、数日経っても弊社からのご連絡が届かない際は、<br>恐れ入りますが下記までご連絡をいただけますと幸いです。</p>
48
- <p class="supplement">GMOインターネット株式会社<br>事業本部 メディア営業部<br>TEL: 0120-080-822<br><span>( 営業時間 平日9:00 ~ 18:00 )</span></p>
49
- <div class="submit-end"><button><img src="images/back.png" alt="送信" /><span>フォーム入力に戻る</span></button></div>
46
+ <div class="submit-end"><button>フォーム入力に戻る</button></div><!-- このボタンを押すとエリア1が表示される -->
50
47
  </div>
48
+ ```
49
+ ```js
50
+ $(function(){
51
+ $('button').on('click',function(){
52
+ switch($(this).text()){
53
+ case "確認画面":
54
+ case "もどる":
55
+ $('.form-area:eq(0),.form-area:eq(1)').toggleClass("active");
56
+ break;
57
+ case "送信":
58
+ $('.form-area:eq(1),.form-area:eq(2)').toggleClass("active");
59
+ break;
60
+ case "フォーム入力に戻る":
61
+ $('.form-area:eq(0),.form-area:eq(2)').toggleClass("active");
62
+ break;
63
+ }
64
+ });
65
+ });
51
66
  ```