質問編集履歴

3

近い内容のURLを添付

2021/05/07 02:03

投稿

mikage126
mikage126

スコア2

test CHANGED
File without changes
test CHANGED
@@ -32,6 +32,12 @@
32
32
 
33
33
 
34
34
 
35
+ https://teratail.com/questions/88605
36
+
37
+ おそらく近い内容だとは思うのですが、少し違うような気もしてさっぱりの状態です・・・。
38
+
39
+
40
+
35
41
  ### 発生している問題・エラーメッセージ
36
42
 
37
43
 

2

説明の追加

2021/05/07 02:02

投稿

mikage126
mikage126

スコア2

test CHANGED
File without changes
test CHANGED
@@ -40,6 +40,20 @@
40
40
 
41
41
  全部で56箇所あるが、最後の一件のみ送信される。
42
42
 
43
+
44
+
45
+ 送信先のページで、データベースをupdate、その数値に応じて表記が変わるようにしてます。
46
+
47
+
48
+
49
+ 例:左上のマス id=1 day=日 count=5とします。 countを「0」に書き換え、データベースを更新できれば次のページでは「×」が表示されます。
50
+
51
+
52
+
53
+ しかし、実際はその動作ができるのは一番最後 左下の id=56 day=土 count=5 の一件だけなので、
54
+
55
+ 1〜56を書き換えて、全て送信、更新ができるようにしたい。
56
+
43
57
  ```
44
58
 
45
59
 

1

送信先の受取の記述を追記しました

2021/05/07 01:48

投稿

mikage126
mikage126

スコア2

test CHANGED
File without changes
test CHANGED
@@ -3,6 +3,8 @@
3
3
  ![イメージ説明](2ff12ff6846356cef6ef8a10573db742.png)
4
4
 
5
5
 
6
+
7
+ ![イメージ説明](b0cc07e971cd9b7a821d63fa24fef816.png)
6
8
 
7
9
 
8
10
 
@@ -16,13 +18,17 @@
16
18
 
17
19
 
18
20
 
19
- データベースから3つの列、日付id、day、countを一覧で表示。
21
+ データベースから3つの列、id、day、countを一覧で表示。
20
22
 
21
23
  countはフォームから編集可能で1〜5の整数が入力できる。
22
24
 
23
25
 
24
26
 
25
27
  入力された数値がデータベースに更新される。という仕組みを作りたい。
28
+
29
+
30
+
31
+ 送信先のページではcountが0ならば 「×」、それ以外は「○」を表示する。
26
32
 
27
33
 
28
34
 
@@ -62,9 +68,9 @@
62
68
 
63
69
  echo '<div class="list-day">';
64
70
 
65
- echo '<input type="hidden" name="日付id[]" value="', $row['日付id'], '">';
71
+ echo '<input type="hidden" name="id[]" value="', $row['id'], '">';
66
72
 
67
- echo '<div class="td0">', $row['日付id'], '</div>';
73
+ echo '<div class="td0">', $row['id'], '</div>';
68
74
 
69
75
 
70
76
 
@@ -118,6 +124,60 @@
118
124
 
119
125
 
120
126
 
127
+ 送信の受取の記述
128
+
129
+ ```ここに言語名を入力
130
+
131
+ echo $_REQUEST['id'],$_REQUEST['day'], $_REQUEST['count']; /*確認用*/
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+ $pdo=new PDO('mysql:host=localhost;dbname=sample;charset=utf8',
142
+
143
+ 'root', 'root');
144
+
145
+
146
+
147
+ echo '<div class="update">';
148
+
149
+ $sql=$pdo->prepare('update reserv_2 set count=? where id=?');
150
+
151
+
152
+
153
+
154
+
155
+ if (!preg_match('/[0-5]+/', $_REQUEST['count'])) {
156
+
157
+ echo '在庫を1〜5の整数で入力してください。';
158
+
159
+ } else
160
+
161
+ if ($sql->execute(
162
+
163
+ [htmlspecialchars($_REQUEST['count']),
164
+
165
+ $_REQUEST['id']]
166
+
167
+ )) {
168
+
169
+ echo '更新に成功しました。';
170
+
171
+ } else {
172
+
173
+ echo '更新に失敗しました。';
174
+
175
+ }
176
+
177
+ ```
178
+
179
+
180
+
121
181
  ### 試したこと
122
182
 
123
183