質問編集履歴

3

意図的な内容抹消の取り消し

2018/08/20 00:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,275 @@
1
- リンク先のページ(2.php)でどの名前をユーザー
1
+ リンク先のページ(2.php)でどの名前をユーザーが選んだかを判別して、該当する詳細を表示する方法がわかりません。
2
+
3
+ <a href='2.php?name=$name'>をどう変更すれば、ユーザーが選んだ該当の詳細ページが表示されるでしょうか。
4
+
5
+ idはautoincrementです
6
+
7
+
8
+
9
+ ご回答よろしくお願いいたします。
10
+
11
+
12
+
13
+ 1.php
14
+
15
+ ```php
16
+
17
+
18
+
19
+ <?php
20
+
21
+
22
+
23
+ $database = new PDO('mysql:host=localhost;dbname=juicedatabase;charset=UTF8;', 'root', '');
24
+
25
+
26
+
27
+ $error_message = "";
28
+
29
+
30
+
31
+ if(isset($_POST["name"]) && isset($_POST["price"])){
32
+
33
+ if($_POST["name"] != "" && $_POST["price"] != "" && preg_match('/^[0-9]+$/D', $_POST["price"])){
34
+
35
+
36
+
37
+ $price = $_POST['price'];
38
+
39
+ $name = $_POST['name'];
40
+
41
+ $sql="INSERT INTO juices(name,price)VALUES(:name, :price)";
42
+
43
+ $statement = $database->prepare($sql);
44
+
45
+ $statement->bindParam(':name',$_POST['name']);
46
+
47
+ $statement->bindParam(':price',$_POST['price']);
48
+
49
+ $statement->execute();
50
+
51
+ $statement =null;
52
+
53
+
54
+
55
+ }else{
56
+
57
+ $error_message = 'font color="blue">半角数字で入力</font>';
58
+
59
+ }
60
+
61
+ }
62
+
63
+
64
+
65
+ $sql = 'SELECT * FROM juices';
66
+
67
+ $statement = $database->query($sql);
68
+
69
+ $records = $statement->fetchAll();
70
+
71
+ $statement = null;
72
+
73
+ ?>
74
+
75
+
76
+
77
+ <!DOCTYPE html>
78
+
79
+ <html>
80
+
81
+ <head>
82
+
83
+ <meta charset="UTF-8">
84
+
85
+ </head>
86
+
87
+ <body>
88
+
89
+ <form action='2.php' method="post">
90
+
91
+ <p>name</p><input type="text" required="required" name="name" value="<?php echo $name; ?>">
92
+
93
+ <p>price</p><?php echo $error_message; ?><input type="text" required="required" name="price">
94
+
95
+ <input type="submit" value="送信">
96
+
97
+ </form>
98
+
99
+
100
+
101
+
102
+
103
+ <table>
104
+
105
+
106
+
107
+ <?php
108
+
109
+ foreach ($records as $record) {
110
+
111
+ $name = $record['name'];
112
+
113
+ $id = $record['id'];
114
+
115
+ ?>
116
+
117
+
118
+
119
+
120
+
121
+ <tr>
122
+
123
+ <td><a href='2.php?name=$name'><?php print $name; ?></a></td>
124
+
125
+ <td><?php print $id; ?></td>
126
+
127
+ </tr>
128
+
129
+
130
+
131
+ <?php
132
+
133
+ }
134
+
135
+ ?>
136
+
137
+ </table>
138
+
139
+
140
+
141
+ </body>
142
+
143
+ </html>
144
+
145
+ ```
146
+
147
+
148
+
149
+ 2.php
150
+
151
+ ```php
152
+
153
+
154
+
155
+ <?php
156
+
157
+ $database = new PDO('mysql:host=localhost;dbname=juicedatabase;charset=UTF8;', 'root', '');
158
+
159
+
160
+
161
+ $id = $_GET["id"];
162
+
163
+ $price = $_GET["price"];
164
+
165
+ $title = $_GET["title"];
166
+
167
+
168
+
169
+ if (preg_match('/^[ -~。-゚]*$/u', 'abcA')){
170
+
171
+
172
+
173
+ $sql = "SELECT id,name,price from juices where name='$name'";
174
+
175
+ $statement = $database->query($sql);
176
+
177
+ $records = $statement->fetchAll();
178
+
179
+ $statement = null;
180
+
181
+
182
+
183
+ }else{
184
+
185
+ exit;
186
+
187
+ }
188
+
189
+
190
+
191
+ ?>
192
+
193
+
194
+
195
+ <!DOCTYPE html>
196
+
197
+ <html>
198
+
199
+ <head>
200
+
201
+ <meta charset="UTF-8">
202
+
203
+ </head>
204
+
205
+ <body>
206
+
207
+ <form action='1.php' method="post">
208
+
209
+
210
+
211
+ </form>
212
+
213
+
214
+
215
+
216
+
217
+ <table>
218
+
219
+ <?php
220
+
221
+ foreach ($records as $record) {
222
+
223
+ $price = $record['price'];
224
+
225
+ $name = $record['name'];
226
+
227
+ ?>
228
+
229
+ <p>詳細ページ</p>
230
+
231
+ <p>idは<?php echo $id ?>です</p>
232
+
233
+ <p>名前は<?php echo $name ?>です</p>
234
+
235
+ <p>値段は<?php echo $price ?>円です</p>
236
+
237
+
238
+
239
+ <?php
240
+
241
+ }
242
+
243
+ ?>
244
+
245
+ </table>
246
+
247
+ </body>
248
+
249
+ </html>
2
250
 
3
251
  ```
252
+
253
+ PHP
254
+
255
+ PAGE TOP
256
+
257
+
258
+
259
+ teratailについてご意見お聞かせください
260
+
261
+ 送信
262
+
263
+ 頂いたご意見への回答は行っておりません。
264
+
265
+
266
+
267
+ 返信の必要なお問い合わせはこちら
268
+
269
+
270
+
271
+ teratail【募集】 teratailを一緒に作りたいエンジニア
272
+
273
+ タグ一覧ユーザーを探すバッジとは?teratailとは?称号とは?エキスパート一覧公式ブログteratail Report運営からのお知らせteratail APIヘルプ運営会社利用規約個人情報の取り扱い個人情報保護方針広告掲載のお問い合わせ
274
+
275
+ © 2014-2018 Leverages Co., Ltd.

2

誤字

2018/08/20 00:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,7 +1,3 @@
1
- リンク先のページ(2.php)でどの名前をユーザーが選んだかを判別して、該当する詳細を表示する方法がわかりません。
1
+ リンク先のページ(2.php)でどの名前をユーザー
2
-
3
- <a href='2.php?name=$name'>をどう変更すれば、ユーザーが選んだ該当の詳細ページが表示されるでしょうか。
4
-
5
- </html>
6
2
 
7
3
  ```

1

誤字

2018/08/19 16:20

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -2,250 +2,6 @@
2
2
 
3
3
  <a href='2.php?name=$name'>をどう変更すれば、ユーザーが選んだ該当の詳細ページが表示されるでしょうか。
4
4
 
5
- idはautoincrementです
6
-
7
-
8
-
9
- ご回答よろしくお願いいたします。
10
-
11
-
12
-
13
- 1.php
14
-
15
- ```php
16
-
17
-
18
-
19
- <?php
20
-
21
-
22
-
23
- $database = new PDO('mysql:host=localhost;dbname=juicedatabase;charset=UTF8;', 'root', '');
24
-
25
-
26
-
27
- $error_message = "";
28
-
29
-
30
-
31
- if(isset($_POST["name"]) && isset($_POST["price"])){
32
-
33
- if($_POST["name"] != "" && $_POST["price"] != "" && preg_match('/^[0-9]+$/D', $_POST["price"])){
34
-
35
-
36
-
37
- $price = $_POST['price'];
38
-
39
- $name = $_POST['name'];
40
-
41
- $sql="INSERT INTO juices(name,price)VALUES(:name, :price)";
42
-
43
- $statement = $database->prepare($sql);
44
-
45
- $statement->bindParam(':name',$_POST['name']);
46
-
47
- $statement->bindParam(':price',$_POST['price']);
48
-
49
- $statement->execute();
50
-
51
- $statement =null;
52
-
53
-
54
-
55
- }else{
56
-
57
- $error_message = 'font color="blue">半角数字で入力</font>';
58
-
59
- }
60
-
61
- }
62
-
63
-
64
-
65
- $sql = 'SELECT * FROM juices';
66
-
67
- $statement = $database->query($sql);
68
-
69
- $records = $statement->fetchAll();
70
-
71
- $statement = null;
72
-
73
- ?>
74
-
75
-
76
-
77
- <!DOCTYPE html>
78
-
79
- <html>
80
-
81
- <head>
82
-
83
- <meta charset="UTF-8">
84
-
85
- </head>
86
-
87
- <body>
88
-
89
- <form action='2.php' method="post">
90
-
91
- <p>name</p><input type="text" required="required" name="name" value="<?php echo $name; ?>">
92
-
93
- <p>price</p><?php echo $error_message; ?><input type="text" required="required" name="price">
94
-
95
- <input type="submit" value="送信">
96
-
97
- </form>
98
-
99
-
100
-
101
-
102
-
103
- <table>
104
-
105
-
106
-
107
- <?php
108
-
109
- foreach ($records as $record) {
110
-
111
- $name = $record['name'];
112
-
113
- $id = $record['id'];
114
-
115
- ?>
116
-
117
-
118
-
119
-
120
-
121
- <tr>
122
-
123
- <td><a href='2.php?name=$name'><?php print $name; ?></a></td>
124
-
125
- <td><?php print $id; ?></td>
126
-
127
- </tr>
128
-
129
-
130
-
131
- <?php
132
-
133
- }
134
-
135
- ?>
136
-
137
- </table>
138
-
139
-
140
-
141
- </body>
142
-
143
5
  </html>
144
6
 
145
7
  ```
146
-
147
-
148
-
149
- 2.php
150
-
151
- ```php
152
-
153
-
154
-
155
- <?php
156
-
157
- $database = new PDO('mysql:host=localhost;dbname=juicedatabase;charset=UTF8;', 'root', '');
158
-
159
-
160
-
161
- $id = $_GET["id"];
162
-
163
- $price = $_GET["price"];
164
-
165
- $title = $_GET["title"];
166
-
167
-
168
-
169
- if (preg_match('/^[ -~。-゚]*$/u', 'abcA')){
170
-
171
-
172
-
173
- $sql = "SELECT id,name,price from juices where name='$name'";
174
-
175
- $statement = $database->query($sql);
176
-
177
- $records = $statement->fetchAll();
178
-
179
- $statement = null;
180
-
181
-
182
-
183
- }else{
184
-
185
- exit;
186
-
187
- }
188
-
189
-
190
-
191
- ?>
192
-
193
-
194
-
195
- <!DOCTYPE html>
196
-
197
- <html>
198
-
199
- <head>
200
-
201
- <meta charset="UTF-8">
202
-
203
- </head>
204
-
205
- <body>
206
-
207
- <form action='1.php' method="post">
208
-
209
-
210
-
211
- </form>
212
-
213
-
214
-
215
-
216
-
217
- <table>
218
-
219
- <?php
220
-
221
- foreach ($records as $record) {
222
-
223
- $price = $record['price'];
224
-
225
- $name = $record['name'];
226
-
227
- ?>
228
-
229
- <p>詳細ページ</p>
230
-
231
- <p>idは<?php echo $id ?>です</p>
232
-
233
- <p>名前は<?php echo $name ?>です</p>
234
-
235
- <p>値段は<?php echo $price ?>円です</p>
236
-
237
-
238
-
239
- <?php
240
-
241
- }
242
-
243
- ?>
244
-
245
- </table>
246
-
247
- </body>
248
-
249
- </html>
250
-
251
- ```