質問編集履歴
6
編集
test
CHANGED
File without changes
|
test
CHANGED
@@ -181,7 +181,7 @@
|
|
181
181
|
(dbconnect.php)
|
182
182
|
|
183
183
|
<?php
|
184
|
-
|
184
|
+
|
185
185
|
ini_set('display_errors', true);
|
186
186
|
function connect(){
|
187
187
|
|
5
queryの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -169,3 +169,44 @@
|
|
169
169
|
↓
|
170
170
|
Uncaught PDOException: SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected in
|
171
171
|
とエラーで表示されました!これから詳しく見てみます。
|
172
|
+
|
173
|
+
【8/29 追記】
|
174
|
+
$stmt = $pdo->query('ここにDB名を入れました');をdbconnect.phpに記述し、実行したところ、
|
175
|
+
Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near
|
176
|
+
というエラーが起きました。
|
177
|
+
バージョン:MariaDB10.5
|
178
|
+
サーバー:エックスサーバー
|
179
|
+
これからまたしばらく試行錯誤してみます。
|
180
|
+
```php
|
181
|
+
(dbconnect.php)
|
182
|
+
|
183
|
+
<?php
|
184
|
+
require_once '/home/xs280151/tsukurushopping.com/public_html/kintai/env.php';
|
185
|
+
ini_set('display_errors', true);
|
186
|
+
function connect(){
|
187
|
+
|
188
|
+
$host = DB_HOST;
|
189
|
+
$db = DB_NAME;
|
190
|
+
$user = DB_USER;
|
191
|
+
$pass = DB_PASS;
|
192
|
+
|
193
|
+
$dsn = "mysql:host = $host; dbname = $db; charset = utf8mb4";
|
194
|
+
|
195
|
+
try {
|
196
|
+
$pdo = new PDO($dsn, $user, $pass, [
|
197
|
+
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
198
|
+
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
|
199
|
+
]);
|
200
|
+
$stmt = $pdo->query('ここにDB名を直書きしました');
|
201
|
+
return $pdo;
|
202
|
+
//echo '接続成功です!!';
|
203
|
+
var_dump($db);
|
204
|
+
} catch(PDOExeption $e){
|
205
|
+
echo '接続失敗です!'. $e->getMessage();
|
206
|
+
exit();
|
207
|
+
}
|
208
|
+
}
|
209
|
+
//echo connect();
|
210
|
+
?>
|
211
|
+
```
|
212
|
+
|
4
ソースの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -137,7 +137,31 @@
|
|
137
137
|
```php
|
138
138
|
|
139
139
|
INSER文のある、UserLogic.phpで、dbconnect.phpをrequire_onceしています。
|
140
|
-
(dbconnect.php)
|
140
|
+
(dbconnect.php)
|
141
|
+
function connect(){
|
142
|
+
|
143
|
+
$host = DB_HOST;
|
144
|
+
$db = DB_NAME;
|
145
|
+
$user = DB_USER;
|
146
|
+
$pass = DB_PASS;
|
147
|
+
|
148
|
+
|
149
|
+
$dsn = "mysql:host = $host; dbname = $db; charset = utf8mb4";
|
150
|
+
|
151
|
+
try {
|
152
|
+
$pdo = new PDO($dsn, $user, $pass, [
|
153
|
+
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
154
|
+
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
|
155
|
+
]);
|
156
|
+
//$stmt = $pdo->query('DB_NAME');
|
157
|
+
return $pdo;
|
158
|
+
//echo '接続成功です!!';
|
159
|
+
} catch(PDOExeption $e){
|
160
|
+
echo '接続失敗です!'. $e->getMessage();
|
161
|
+
exit();
|
162
|
+
}
|
163
|
+
}
|
164
|
+
// echo connect();
|
141
165
|
|
142
166
|
```
|
143
167
|
catchで
|
3
dbconnect.phpの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -134,6 +134,12 @@
|
|
134
134
|
テーブル
|
135
135
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-08-25/2e41788d-703c-47d4-94ca-4003d81b03f9.png)
|
136
136
|
|
137
|
+
```php
|
138
|
+
|
139
|
+
INSER文のある、UserLogic.phpで、dbconnect.phpをrequire_onceしています。
|
140
|
+
(dbconnect.php) function connect(){ $host = DB_HOST; $db = DB_NAME; $user = DB_USER; $pass = DB_PASS; $dsn = "mysql:host = $host; dbname = $db; charset = utf8mb4"; try { $pdo = new PDO($dsn, $user, $pass, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC ]); return $pdo; //echo '接続成功です!!'; } catch(PDOExeption $e){ echo '接続失敗です!'. $e->getMessage(); exit(); } }
|
141
|
+
|
142
|
+
```
|
137
143
|
catchで
|
138
144
|
PDOExceptionをつかめばエラーの詳細がわかると思います。
|
139
145
|
↓
|
2
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -134,5 +134,8 @@
|
|
134
134
|
テーブル
|
135
135
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-08-25/2e41788d-703c-47d4-94ca-4003d81b03f9.png)
|
136
136
|
|
137
|
+
catchで
|
138
|
+
PDOExceptionをつかめばエラーの詳細がわかると思います。
|
139
|
+
↓
|
137
140
|
Uncaught PDOException: SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected in
|
138
141
|
とエラーで表示されました!これから詳しく見てみます。
|
1
回答欄に記載してしまったため、こちらに追加しました!
test
CHANGED
File without changes
|
test
CHANGED
@@ -134,3 +134,5 @@
|
|
134
134
|
テーブル
|
135
135
|
![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-08-25/2e41788d-703c-47d4-94ca-4003d81b03f9.png)
|
136
136
|
|
137
|
+
Uncaught PDOException: SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected in
|
138
|
+
とエラーで表示されました!これから詳しく見てみます。
|