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

回答編集履歴

3

ajaxの送信について追記

2018/02/21 05:45

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -12,4 +12,26 @@
12
12
 
13
13
  「チェック」とありますが、1個しか選択できないのであれば、ラジオボタンかセレクトボックスですよね?
14
14
  初期値設定のやり方は下記を参考にしてください。
15
- - [フォーム要素に対して値を設定するには?(val)](https://www.buildinsider.net/web/jqueryref/050)
15
+ - [フォーム要素に対して値を設定するには?(val)](https://www.buildinsider.net/web/jqueryref/050)
16
+
17
+
18
+ # ajax送信について
19
+
20
+ ajaxで送信するデータは配列形式です。
21
+
22
+ ```javascript
23
+ var arg = {emp_id : $('#emp_id').val(),emp_name : $('#emp_name').val(),month : $('#month').val(),day : $('#day').val(),work_time:$("input[name='time_repertory']:checked").val()};
24
+
25
+ $.ajax({
26
+ type: "POST",
27
+ url: "add.php",
28
+ data: arg,
29
+
30
+ ```
31
+
32
+ ```php
33
+ $_POST["emp_id"];
34
+ ```
35
+
36
+ 「OK」「NG」だけであれば、1,0だけをphp側で最後にecho して終わりです。
37
+ そこで出力された内容が dataに格納されます。

2

修正

2018/02/21 05:45

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -2,11 +2,12 @@
2
2
  ※ソースコードの提示は難しい内容なので、考え方のみです。
3
3
 
4
4
  0. [PHP]→[HTML]DBから時間区分を取得し、「勤務時間レパートリー」の入力コントロールをモーダルに設置する
5
+ 0. [javascript]→[HTML]クリックで登録モーダルを表示、日付・ユーザを引数として渡す
5
6
  0. [javascript]→[PHP]ajaxで日付、ユーザ(管理はIDとかでしょうか)、勤務時間レパートリーを送信。DBに登録する→[jQueryのAjaxをPHPで使うやつ](https://qiita.com/super2baba/items/b1301ca567b60b2e00c7)
6
7
  0. [PHP]→[javascript]→[php]→[HTML]更新成功したら画面リロード。シフト登録した日付のユーザには何かしらマークを置いておく
7
- 0. [javascript]マークをクリックで登録時と同じモーダルを表示、日付・ユーザと共に「勤務時間レパートリー」も引数として渡す
8
+ 0. [javascript]→[HTML]マークをクリックで登録時と同じモーダルを表示、日付・ユーザと共に「勤務時間レパートリー」も引数として渡す
8
9
   ※不安であればクリック時にajaxで情報を再取得しても良いです
9
- 0. [javascript]渡された「勤務時間レパートリー」を初期状態チェックにしておく
10
+ 0. [javascript]→[HTML]渡された「勤務時間レパートリー」を初期状態チェックにしておく
10
11
  0. [javascript]→[PHP]「更新」ボタンとし、ajaxにて更新処理を行う(以下2.と同)
11
12
 
12
13
  「チェック」とありますが、1個しか選択できないのであれば、ラジオボタンかセレクトボックスですよね?

1

修正

2018/02/20 06:05

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -1,12 +1,13 @@
1
1
  ざっくりしか仕様把握していませんが、こんな感じではないでしょうか。
2
2
  ※ソースコードの提示は難しい内容なので、考え方のみです。
3
3
 
4
+ 0. [PHP]→[HTML]DBから時間区分を取得し、「勤務時間レパートリー」の入力コントロールをモーダルに設置する
4
- 0. ajaxで日付、ユーザ(管理はIDとかでしょうか)、勤務時間レパートリーを送信。DBに登録する→[jQueryのAjaxをPHPで使うやつ](https://qiita.com/super2baba/items/b1301ca567b60b2e00c7)
5
+ 0. [javascript]→[PHP]ajaxで日付、ユーザ(管理はIDとかでしょうか)、勤務時間レパートリーを送信。DBに登録する→[jQueryのAjaxをPHPで使うやつ](https://qiita.com/super2baba/items/b1301ca567b60b2e00c7)
5
- 0. 更新成功したら画面リロード。シフト登録した日付のユーザには何かしらマークを置いておく
6
+ 0. [PHP]→[javascript]→[php]→[HTML]更新成功したら画面リロード。シフト登録した日付のユーザには何かしらマークを置いておく
6
- 0. マークをクリックで登録時と同じモーダルを表示、日付・ユーザと共に「勤務時間レパートリー」も引数として渡す
7
+ 0. [javascript]マークをクリックで登録時と同じモーダルを表示、日付・ユーザと共に「勤務時間レパートリー」も引数として渡す
7
8
   ※不安であればクリック時にajaxで情報を再取得しても良いです
8
- 0. 渡された「勤務時間レパートリー」を初期状態チェックにしておく
9
+ 0. [javascript]渡された「勤務時間レパートリー」を初期状態チェックにしておく
9
- 0. 「更新」ボタンとし、ajaxにて更新処理を行う(以下2.と同)
10
+ 0. [javascript]→[PHP]「更新」ボタンとし、ajaxにて更新処理を行う(以下2.と同)
10
11
 
11
12
  「チェック」とありますが、1個しか選択できないのであれば、ラジオボタンかセレクトボックスですよね?
12
13
  初期値設定のやり方は下記を参考にしてください。