質問編集履歴
6
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -202,4 +202,4 @@
|
|
202
202
|
|
203
203
|
### 追記
|
204
204
|
|
205
|
-
fetchメソッドがfalseを返す場合を考慮して、
|
205
|
+
fetchメソッドがfalseを返す場合を考慮して、if文で検証したのちにpasswoed_verify関数を使うことで入力したパスワード、データベースのパスワードを比較できました。
|
5
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
### password_verify関数を使い、認証システムを作りたい
|
1
|
+
**ボールドテキスト**### password_verify関数を使い、認証システムを作りたい
|
2
2
|
|
3
3
|
phpファイルで作業し、パスワード認証システムを実装中にエラーが出力されました。
|
4
4
|
|
@@ -197,3 +197,9 @@
|
|
197
197
|
### 試したこと
|
198
198
|
|
199
199
|
password_verify関数の部分が原因ということで、Qiita等で調べると、スカラー型変数に配列アクセスするとこのようなエラーが出ると書いてありました。しかし、$_POST,$resultはどちらも連想配列の扱いで、正当にアクセスしているように思えます。何か誤っている点がありましたら、ご教授お願いしたいです。アドバイスのもと、try-catchを使用しましたが、db側からのエラーの返答はない状態です。
|
200
|
+
|
201
|
+
|
202
|
+
|
203
|
+
### 追記
|
204
|
+
|
205
|
+
fetchメソッドがfalseを返す場合を考慮して、この部分をif文で検証したのちにpasswoed_verify関数を使うことで入力したパスワード、データベースのパスワードを比較できました。
|
4
書式の改善
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
password_verify関数を使い、
|
1
|
+
password_verify関数を使い、入力したパスワードとデータベースのパスワードを比較したい
|
test
CHANGED
File without changes
|
3
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -170,7 +170,29 @@
|
|
170
170
|
|
171
171
|
```
|
172
172
|
|
173
|
+
dbconnect.php
|
173
174
|
|
175
|
+
```PHP
|
176
|
+
|
177
|
+
<?php
|
178
|
+
|
179
|
+
try{
|
180
|
+
|
181
|
+
$db = new PDO('mysql:dbname=mini_bbs;host=127.0.0.1;charset=utf8', 'root', 'root');
|
182
|
+
|
183
|
+
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
184
|
+
|
185
|
+
}catch(PDOException $e){
|
186
|
+
|
187
|
+
print('db接続エラー' . $e->getMessage());
|
188
|
+
|
189
|
+
}
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
?>
|
194
|
+
|
195
|
+
```
|
174
196
|
|
175
197
|
### 試したこと
|
176
198
|
|
2
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
```
|
10
10
|
|
11
|
-
Notice: Trying to access array offset on value of type bool in /Applications/MAMP/htdocs/templates/login.php on line 1
|
11
|
+
Notice: Trying to access array offset on value of type bool in /Applications/MAMP/htdocs/templates/login.php on line 12
|
12
12
|
|
13
13
|
```
|
14
14
|
|
1
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
```
|
10
10
|
|
11
|
-
Notice: Trying to access array offset on value of type bool in /Applications/MAMP/htdocs/templates/login.php on line 1
|
11
|
+
Notice: Trying to access array offset on value of type bool in /Applications/MAMP/htdocs/templates/login.php on line 11
|
12
12
|
|
13
13
|
```
|
14
14
|
|
@@ -28,11 +28,15 @@
|
|
28
28
|
|
29
29
|
session_start();
|
30
30
|
|
31
|
+
$loginerror['vali']="";
|
32
|
+
|
31
33
|
require('join/dbconnect.php');
|
32
34
|
|
33
35
|
if(!empty($_POST)){
|
34
36
|
|
37
|
+
try{
|
38
|
+
|
35
|
-
$member1 = $db->prepare('SELECT * FROM members where email=?');
|
39
|
+
$member1 = $db->prepare('SELECT * FROM members where email=?');
|
36
40
|
|
37
41
|
$member1->execute(array($_POST['email']));
|
38
42
|
|
@@ -40,13 +44,19 @@
|
|
40
44
|
|
41
45
|
if(password_verify($_POST['password'],$result['password'])){
|
42
46
|
|
43
|
-
header('Location:
|
47
|
+
header('Location: index.php');
|
44
48
|
|
45
49
|
exit();
|
46
50
|
|
47
51
|
}
|
48
52
|
|
49
53
|
}
|
54
|
+
|
55
|
+
catch(PDOException $e){
|
56
|
+
|
57
|
+
print('db接続エラー' . $e->getMessage());
|
58
|
+
|
59
|
+
}
|
50
60
|
|
51
61
|
?>
|
52
62
|
|
@@ -164,4 +174,4 @@
|
|
164
174
|
|
165
175
|
### 試したこと
|
166
176
|
|
167
|
-
password_verify関数の部分が原因ということで、Qiita等で調べると、スカラー型変数に配列アクセスするとこのようなエラーが出ると書いてありました。しかし、$_POST,$resultはどちらも連想配列の扱いで、正当にアクセスしているように思えます。何か誤っている点がありましたら、ご教授お願いしたいです。
|
177
|
+
password_verify関数の部分が原因ということで、Qiita等で調べると、スカラー型変数に配列アクセスするとこのようなエラーが出ると書いてありました。しかし、$_POST,$resultはどちらも連想配列の扱いで、正当にアクセスしているように思えます。何か誤っている点がありましたら、ご教授お願いしたいです。アドバイスのもと、try-catchを使用しましたが、db側からのエラーの返答はない状態です。
|