質問編集履歴

2

ロリポップサーバーで実行し、そこで出たエラーメッセージがローカルサーバーと異なったため追記しました。

2021/07/07 02:45

投稿

THerb05
THerb05

スコア1

test CHANGED
File without changes
test CHANGED
@@ -280,15 +280,109 @@
280
280
 
281
281
  ```
282
282
 
283
+ ```
284
+
285
+ donedoneただいま障害により大変ご迷惑をおかけしております。
286
+
287
+ object(PDOException)#3 (8) {
288
+
289
+ ["message":protected]=>
290
+
291
+ string(81) "SQLSTATE[42S22]: Column not found: 1054 Unknown column '$contact' in 'field list'"
292
+
293
+ ["string":"Exception":private]=>
294
+
295
+ string(0) ""
296
+
297
+ ["code":protected]=>
298
+
299
+ string(5) "42S22"
300
+
301
+ ["file":protected]=>
302
+
303
+ string(53) "*******************************"
304
+
305
+ ["line":protected]=>
306
+
307
+ int(49)
308
+
309
+ ["trace":"Exception":private]=>
310
+
311
+ array(1) {
312
+
313
+ [0]=>
314
+
315
+ array(6) {
316
+
317
+ ["file"]=>
318
+
319
+ string(53) "**************************"
320
+
321
+ ["line"]=>
322
+
323
+ int(49)
324
+
325
+ ["function"]=>
326
+
327
+ string(5) "query"
328
+
329
+ ["class"]=>
330
+
331
+ string(3) "PDO"
332
+
333
+ ["type"]=>
334
+
335
+ string(2) "->"
336
+
337
+ ["args"]=>
338
+
339
+ array(1) {
340
+
341
+ [0]=>
342
+
343
+ string(220) "INSERT INTO `LA****************`.`***************`(`id`, `お問い合わせ内容`, `氏名`, `メールアドレス`, `電話番号`, `メッセージ`, `created_at`)VALUES(NULL,$contact,$name,$email,$tel,$message,NULL)"
344
+
345
+ }
346
+
347
+ }
348
+
349
+ }
350
+
351
+ ["previous":"Exception":private]=>
352
+
353
+ NULL
354
+
355
+ ["errorInfo"]=>
356
+
357
+ array(3) {
358
+
359
+ [0]=>
360
+
361
+ string(5) "42S22"
362
+
363
+ [1]=>
364
+
365
+ int(1054)
366
+
367
+ [2]=>
368
+
369
+ string(41) "Unknown column '$contact' in 'field list'"
370
+
371
+ }
372
+
373
+ }
374
+
375
+ ```
376
+
283
377
 
284
378
 
285
379
  index.phpのフォームからaction="POST", method="confirm.phpで上記のコードファイルに移り、MySQLにデータが保存されるようにしたいのですが、catchの処理が行われてしまいます。
286
380
 
287
381
 
288
382
 
289
- AbeTalashiさんにご指摘いただいたように、var_dump($e);にてエラーメッセージを表示させることができました。
383
+ AbeTakashiさんにご指摘いただいたように、var_dump($e);にてエラーメッセージを表示させることができました。
384
+
290
-
385
+ AbeTakashiさんにご指摘いただいたように、ローカルサーバーでの実行ではなくロリポップサーバーで実行したところ、?,?,?,?,?,NULL)の部分に文法ミスがあるとエラーメッセージが出たため、?の部分を$contactなどで代用しました。その結果、上記のエラーメッセージになりました。
291
-
292
386
 
293
387
 
294
388
 

1

エラーメッセージを追記しました。

2021/07/07 02:45

投稿

THerb05
THerb05

スコア1

test CHANGED
File without changes
test CHANGED
@@ -94,11 +94,199 @@
94
94
 
95
95
 
96
96
 
97
+ ### エラーメッセージ
98
+
99
+ ```
100
+
101
+ object(PDOException)#3 (8) {
102
+
103
+ ["message":protected]=>
104
+
105
+ string(113) "SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known"
106
+
107
+ ["string":"Exception":private]=>
108
+
109
+ string(0) ""
110
+
111
+ ["code":protected]=>
112
+
113
+ int(2002)
114
+
115
+ ["file":protected]=>
116
+
117
+ string(64) "/Applications/MAMP/htdocs/********/public/confirm.php"
118
+
119
+ ["line":protected]=>
120
+
121
+ int(44)
122
+
123
+ ["trace":"Exception":private]=>
124
+
125
+ array(1) {
126
+
127
+ [0]=>
128
+
129
+ array(6) {
130
+
131
+ ["file"]=>
132
+
133
+ string(64) "/Applications/MAMP/htdocs/**********/public/confirm.php"
134
+
135
+ ["line"]=>
136
+
137
+ int(44)
138
+
139
+ ["function"]=>
140
+
141
+ string(11) "__construct"
142
+
143
+ ["class"]=>
144
+
145
+ string(3) "PDO"
146
+
147
+ ["type"]=>
148
+
149
+ string(2) "->"
150
+
151
+ ["args"]=>
152
+
153
+ array(3) {
154
+
155
+ [0]=>
156
+
157
+ string(61) "mysql:host=mysql*****************;dbname=LA************"
158
+
159
+ [1]=>
160
+
161
+ string(24) "LA**********"
162
+
163
+ [2]=>
164
+
165
+ string(12) "************"
166
+
167
+ }
168
+
169
+ }
170
+
171
+ }
172
+
173
+ ["previous":"Exception":private]=>
174
+
175
+ object(PDOException)#2 (9) {
176
+
177
+ ["message":protected]=>
178
+
179
+ string(110) "PDO::__construct(): php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known"
180
+
181
+ ["string":"Exception":private]=>
182
+
183
+ string(0) ""
184
+
185
+ ["code":protected]=>
186
+
187
+ int(0)
188
+
189
+ ["file":protected]=>
190
+
191
+ string(64) "/Applications/MAMP/htdocs/********/public/confirm.php"
192
+
193
+ ["line":protected]=>
194
+
195
+ int(44)
196
+
197
+ ["trace":"Exception":private]=>
198
+
199
+ array(1) {
200
+
201
+ [0]=>
202
+
203
+ array(6) {
204
+
205
+ ["file"]=>
206
+
207
+ string(64) "/Applications/MAMP/htdocs/**********/public/confirm.php"
208
+
209
+ ["line"]=>
210
+
211
+ int(44)
212
+
213
+ ["function"]=>
214
+
215
+ string(11) "__construct"
216
+
217
+ ["class"]=>
218
+
219
+ string(3) "PDO"
220
+
221
+ ["type"]=>
222
+
223
+ string(2) "->"
224
+
225
+ ["args"]=>
226
+
227
+ array(3) {
228
+
229
+ [0]=>
230
+
231
+ string(61) "mysql:host=mysql***************;dbname=LA*************"
232
+
233
+ [1]=>
234
+
235
+ string(24) "LA*************"
236
+
237
+ [2]=>
238
+
239
+ string(12) "***************"
240
+
241
+ }
242
+
243
+ }
244
+
245
+ }
246
+
247
+ ["previous":"Exception":private]=>
248
+
249
+ NULL
250
+
251
+ ["errorInfo"]=>
252
+
253
+ NULL
254
+
255
+ ["severity"]=>
256
+
257
+ int(2)
258
+
259
+ }
260
+
261
+ ["errorInfo"]=>
262
+
263
+ array(3) {
264
+
265
+ [0]=>
266
+
267
+ string(5) "HY000"
268
+
269
+ [1]=>
270
+
271
+ int(2002)
272
+
273
+ [2]=>
274
+
275
+ string(90) "php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known"
276
+
277
+ }
278
+
279
+ }
280
+
281
+ ```
282
+
283
+
284
+
97
285
  index.phpのフォームからaction="POST", method="confirm.phpで上記のコードファイルに移り、MySQLにデータが保存されるようにしたいのですが、catchの処理が行われてしまいます。
98
286
 
99
287
 
100
288
 
101
- エラーメッセージが出て来ず、エラ〜メッセージを出すコマンドを調べて書てみまし** Undefinedと出くるだけで、値を与えるとエラーメッセージはなくなり、catch部分の処理である「ただいま障害により大変ご迷惑おかけしております。」のみ表示さ
289
+ AbeTalashiさんにご指摘いただいたようにvar_dump($e);にてエラーメッセージを表示させることができした
102
290
 
103
291
 
104
292