回答編集履歴
3
書式の改善
test
CHANGED
@@ -146,7 +146,11 @@
|
|
146
146
|
|
147
147
|
下記コメントでも触れましたが、質問に記載のエラーメッセージは下記行の記述が原因と思われます。
|
148
148
|
|
149
|
+
```php
|
150
|
+
|
149
|
-
|
151
|
+
$stt = &db -> prepare(&sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
|
152
|
+
|
153
|
+
```
|
150
154
|
|
151
155
|
|
152
156
|
|
@@ -200,11 +204,15 @@
|
|
200
204
|
|
201
205
|
対応としては、&を$に置き換えてください。
|
202
206
|
|
207
|
+
```php
|
208
|
+
|
203
|
-
|
209
|
+
$stt = $db -> prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
|
210
|
+
|
204
|
-
|
211
|
+
```
|
205
|
-
|
206
|
-
|
212
|
+
|
213
|
+
|
214
|
+
|
207
|
-
また、下記箇所
|
215
|
+
また、下記箇所の記述もSQL中に改行が含まれるので望ましくありません。
|
208
216
|
|
209
217
|
```php
|
210
218
|
|
2
エラー原因の追記
test
CHANGED
@@ -139,3 +139,89 @@
|
|
139
139
|
</html>
|
140
140
|
|
141
141
|
```
|
142
|
+
|
143
|
+
---
|
144
|
+
|
145
|
+
追記:
|
146
|
+
|
147
|
+
下記コメントでも触れましたが、質問に記載のエラーメッセージは下記行の記述が原因と思われます。
|
148
|
+
|
149
|
+
> $stt = &db -> prepare(&sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
```bash
|
154
|
+
|
155
|
+
$ cat -n 95631.php
|
156
|
+
|
157
|
+
1 <?php
|
158
|
+
|
159
|
+
2 $dsn = "mysql:dbname=delivery_system;host=localhost;charset=utf8";
|
160
|
+
|
161
|
+
3 $user = "root";
|
162
|
+
|
163
|
+
4 $password = "";
|
164
|
+
|
165
|
+
5 try{
|
166
|
+
|
167
|
+
6 $db = new PDO($dsn,$user,$password);
|
168
|
+
|
169
|
+
7 $db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
|
170
|
+
|
171
|
+
8 $sql='insert into delivery_list (name,prefecture,city,address,type,tel,person_name,copies,set_type)
|
172
|
+
|
173
|
+
9 values(:name,:prefecture,:city,:address,:type,:tel,:person_name,:copies,:set_type)';
|
174
|
+
|
175
|
+
10 $stt = &db -> prepare(&sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
|
176
|
+
|
177
|
+
11 $stt ->execute(array(':name' => [$_POST['name'],':prefecture' => $_POST['prefecture'],':city' => $_POST['city'],':address' => $_POST['address'],':type' => $_POST['type'],':tel' => $_POST['tel'],':peron_name' => $_POST['person_name'],':copies' => $_POST['copies'],':set_type' => $_POST['set_type']]));
|
178
|
+
|
179
|
+
12 }catch(PDOException $error){
|
180
|
+
|
181
|
+
13 echo "接続失敗:".$error->getMessage();
|
182
|
+
|
183
|
+
14 die();
|
184
|
+
|
185
|
+
15 }
|
186
|
+
|
187
|
+
$ php -l 95631.php
|
188
|
+
|
189
|
+
PHP Parse error: syntax error, unexpected '->' (T_OBJECT_OPERATOR), expecting '(' in 95631.php on line 10
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
Parse error: syntax error, unexpected '->' (T_OBJECT_OPERATOR), expecting '(' in 95631.php on line 10
|
194
|
+
|
195
|
+
Errors parsing 95631.php
|
196
|
+
|
197
|
+
```
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
対応としては、&を$に置き換えてください。
|
202
|
+
|
203
|
+
> $stt = $db -> prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
また、下記箇所はSQL中に改行が含まれるので望ましくありません。
|
208
|
+
|
209
|
+
```php
|
210
|
+
|
211
|
+
$sql='insert into delivery_list (name,prefecture,city,address,type,tel,person_name,copies,set_type)
|
212
|
+
|
213
|
+
values(:name,:prefecture,:city,:address,:type,:tel,:person_name,:copies,:set_type)';
|
214
|
+
|
215
|
+
```
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
コード中で改行する場合は、文字列を分割して結合するような対応とした方がよいかと思います。
|
220
|
+
|
221
|
+
```php
|
222
|
+
|
223
|
+
$sql='insert into delivery_list (name,prefecture,city,address,type,tel,person_name,copies,set_type)'
|
224
|
+
|
225
|
+
. ' values(:name,:prefecture,:city,:address,:type,:tel,:person_name,:copies,:set_type)';
|
226
|
+
|
227
|
+
```
|
1
冒頭追記、文法の修正
test
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
エラー内容に記載のエラーの発生箇所は特定できませんでした。
|
2
|
+
|
3
|
+
ご提示いただいているコードがsystem.phpということで認識あっておりますでしょうか。
|
4
|
+
|
5
|
+
|
6
|
+
|
1
7
|
> ①フォームから格納したデータを呼び出すプログラムのやり方は問題ないでしょうか?
|
2
8
|
|
3
9
|
|
@@ -108,7 +114,7 @@
|
|
108
114
|
|
109
115
|
$sql = "SELECT * FROM table_name";
|
110
116
|
|
111
|
-
$stmt = $db->query($sql)
|
117
|
+
$stmt = $db->query($sql);
|
112
118
|
|
113
119
|
foreach($stmt as $row){
|
114
120
|
|