質問編集履歴
4
解決方法の追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\phplesson\chap01\hello.php on line 29
|
10
10
|
|
11
|
-
### 該当のソースコード
|
11
|
+
### 該当のソースコード(追記:データベースに正しく接続されていないことが原因でした)
|
12
12
|
|
13
13
|
```PHP
|
14
14
|
<?php
|
@@ -54,11 +54,7 @@
|
|
54
54
|
Trying to access array offset on value of type bool in C:\xampp\htdocs\phplesson\chap01\hello.php on line 30
|
55
55
|
と表示されてしまいました。
|
56
56
|
|
57
|
-
|
58
|
-
### 補足情報(FW/ツールのバージョンなど)
|
59
|
-
|
57
|
+
###追記(追記:ATTR_EMULATE_PREPARESが誤字でした)
|
60
|
-
|
61
|
-
###追記
|
62
58
|
データベースに接続できていないことがわかり、接続できているかを調べましたが、「エラーがありました」と表示されました。「SELECT ID FROM store_data WHERE ID = 1」をPHPMyAdmin のe-money-testのSQL欄で実行してみたところ、エラーは出ずstore_data の ID = 1の表が表示されました。
|
63
59
|
|
64
60
|
|
@@ -90,4 +86,5 @@
|
|
90
86
|
// echo $e->getMessage;
|
91
87
|
exit();
|
92
88
|
}
|
89
|
+
|
93
90
|
```
|
3
誤字
title
CHANGED
File without changes
|
body
CHANGED
@@ -59,7 +59,7 @@
|
|
59
59
|
store_data は ID, Store_Name, Card が要素です。
|
60
60
|
|
61
61
|
###追記
|
62
|
-
データベースに接続できていないことがわかり、接続できているかを調べましたが、「エラーがありました」と表示されました。「SELECT ID FROM store_data WHERE ID = 1」をe-money-testのSQL欄で実行してみたところ、エラーは出ずstore_data の ID = 1の表が表示されました。
|
62
|
+
データベースに接続できていないことがわかり、接続できているかを調べましたが、「エラーがありました」と表示されました。「SELECT ID FROM store_data WHERE ID = 1」をPHPMyAdmin のe-money-testのSQL欄で実行してみたところ、エラーは出ずstore_data の ID = 1の表が表示されました。
|
63
63
|
|
64
64
|
|
65
65
|
```php
|
2
新しいコード
title
CHANGED
File without changes
|
body
CHANGED
@@ -49,7 +49,6 @@
|
|
49
49
|
```
|
50
50
|
|
51
51
|
### 試したこと
|
52
|
-
|
53
52
|
foreach ((array)$stmt as $row):
|
54
53
|
とすると、
|
55
54
|
Trying to access array offset on value of type bool in C:\xampp\htdocs\phplesson\chap01\hello.php on line 30
|
@@ -57,4 +56,38 @@
|
|
57
56
|
|
58
57
|
|
59
58
|
### 補足情報(FW/ツールのバージョンなど)
|
60
|
-
store_data は ID, Store_Name, Card が要素です。
|
59
|
+
store_data は ID, Store_Name, Card が要素です。
|
60
|
+
|
61
|
+
###追記
|
62
|
+
データベースに接続できていないことがわかり、接続できているかを調べましたが、「エラーがありました」と表示されました。「SELECT ID FROM store_data WHERE ID = 1」をe-money-testのSQL欄で実行してみたところ、エラーは出ずstore_data の ID = 1の表が表示されました。
|
63
|
+
|
64
|
+
|
65
|
+
```php
|
66
|
+
<?php
|
67
|
+
//データベース定義
|
68
|
+
$user = 'root';
|
69
|
+
$password = 'root';
|
70
|
+
$dbName='e-money-test';
|
71
|
+
$host = 'localhost';
|
72
|
+
$dsn="mysql:host={$host};dbname={$dbName};charset=utf8mb4";
|
73
|
+
|
74
|
+
//データベース接続
|
75
|
+
|
76
|
+
try {
|
77
|
+
$pdo = new PDO($dsn, $user, $password);
|
78
|
+
$pdo->setAttribute(PDO::ATTER_EMULATE_PREPARES, false);
|
79
|
+
$pdo->setAttribute(PDO::ATTER_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
80
|
+
|
81
|
+
echo '接続できました';
|
82
|
+
$stmt = $db -> prepare("SELECT ID FROM store_data WHERE ID = ?");
|
83
|
+
$stmt = bindvalue(1, 1);
|
84
|
+
$stmt = execute();
|
85
|
+
|
86
|
+
var_dump($stmt);
|
87
|
+
|
88
|
+
} catch (Exception $e){
|
89
|
+
echo 'エラーがありました。';
|
90
|
+
// echo $e->getMessage;
|
91
|
+
exit();
|
92
|
+
}
|
93
|
+
```
|
1
タイトル・前提
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
PHP
|
1
|
+
PHP で検索機能を作りたい。
|
body
CHANGED
@@ -1,5 +1,7 @@
|
|
1
|
+
質問を修正しました。
|
2
|
+
|
1
3
|
### 前提・実現したいこと
|
2
|
-
|
4
|
+
MYSQL内のDBをPHPで検索しようとしています。
|
3
5
|
|
4
6
|
### 発生している問題・エラーメッセージ
|
5
7
|
foreach()が配列になっていないことが問題なのはわかったのですが、配列にする方法が分かりません。
|