teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

後から見た人がわかりやすいようにしました。質問に回答してくれた皆さま、ありがとうございました。

2021/02/10 12:39

投稿

nazonoinu
nazonoinu

スコア1

title CHANGED
File without changes
body CHANGED
@@ -12,7 +12,7 @@
12
12
  ### 該当のソースコード
13
13
 
14
14
  ```php
15
-
15
+ 質問時から更新しました。
16
16
  <?php
17
17
  try {
18
18
  //DB名、ユーザー名、パスワード(投稿なので文字に置き換えさせていただきます)
@@ -22,27 +22,8 @@
22
22
 
23
23
  $PDO = new PDO($dsn, $user, $password); //MySQLのデータベースに接続
24
24
  $PDO->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //PDOのエラーレポートを表示
25
- // 2.実行したいSQL文をセットする。1
26
- $kanricount = $PDO->prepare('SELECT COUNT( kanrino=:kanribeta ) FROM user;' );
27
- // 3.SQLに対してパラメーターをセットする。【任意】
28
- $kanricount->bindValue(':kanribeta', @$_POST['kanrinobeta'], PDO::PARAM_STR);
29
- // 4.実際にSQLを実行する。
30
- $kanricount->execute();
31
- } catch (PDOException $e) {
32
- exit('データベースに接続できませんでした。' . $e->getMessage());
33
- }
34
25
 
35
- if($kanricount=1){
36
- // 2.実行したいSQL文をセットする。2
37
- $shokyo1 = $PDO->prepare('SELECT * FROM user WHERE kanrino = :kanribeta' );
38
- // 3.SQLに対してパラメーターをセットする。【任意】
39
- $shokyo1->bindValue(':kanribeta', @$_POST['kanrinobeta'], PDO::PARAM_STR);
40
- // 4.実際にSQLを実行する。
41
- $shokyo1->execute();
42
26
 
43
- //5結果の取得
44
- $deta = $shokyo1->fetch();
45
-
46
27
  if($deta['kanrino']=@$_POST['kanrinobeta']and$deta['id']=@$_POST['id']and$deta['pass']=@$_POST['pass']){
47
28
  //2.実行したいSQL文をセットする。
48
29
  $shokyo2 = $PDO->prepare('DELETE * FROM user WHERE kanrino = :kanribeta' );
@@ -55,9 +36,7 @@
55
36
  var_dump("入力した内容に誤りがあります。もう一度やり直してください。");
56
37
  }
57
38
 
58
- }else{
39
+
59
- var_dump("エラーが発生しました。[エラー002]");
60
- }
61
40
  ?>
62
41
 
63
42
 
@@ -80,6 +59,16 @@
80
59
  $detaが正常に動いているかのチェック
81
60
  カラム名の入力ミスがないかの確認
82
61
  分からない部分が多くあまり試せていません。
62
+ ###ミスをしていたポイント
63
+
64
+ if($deta['kanrino']=@$_POST['kanrinobeta']and$deta['id']=@$_POST['id']and$deta['pass']=@$_POST['pass'])
65
+
66
+ if($deta['kanrino']==@$_POST['kanrinobeta']and$deta['id']==@$_POST['id']and$deta['pass']==@$_POST['pass'])
83
67
 
68
+
69
+ $shokyo2 = $PDO->prepare('DELETE * FROM user WHERE kanrino = :kanribeta' );
70
+
71
+ $shokyo2 = $PDO->prepare('DELETE FROM user WHERE kanrino = :kanribeta' );
72
+
84
73
  ### 補足情報(FW/ツールのバージョンなど)
85
74
  動作環境はXFREEサーバーのphp,mysqlサーバーを使用しています。