回答編集履歴
1
修正
answer
CHANGED
@@ -32,7 +32,7 @@
|
|
32
32
|
$data = [$id];
|
33
33
|
$stmt = $this->dbh->prepare($sql);
|
34
34
|
$stmt->execute($data);
|
35
|
-
return $stmt->fetch(PDO::FETCH_ASSOC);
|
35
|
+
return $stmt->fetch(PDO::FETCH_ASSOC);//PDO::FETCH_ASSOCしかしないのであれば毎回書くのではなくそれだけで1つ関数作ってreturn $stmt->fetch(PDO::FETCH_ASSOC);するだけの関数作るのもあり。
|
36
36
|
}
|
37
37
|
|
38
38
|
|
@@ -41,7 +41,7 @@
|
|
41
41
|
$sql = 'INSERT INTO `feeds`(`feed`,`user_id`,`created`) VALUES(?,?,NOW())';
|
42
42
|
$data = [$feed,$signin_user['id']];
|
43
43
|
$stmt = $this->dbh->prepare($sql);
|
44
|
-
$stmt->execute($data);
|
44
|
+
$stmt->execute($data); //何も返さないのはNG。insertは確か成功したかどうかが返るはずなので何かしら返したほうがいいし「確実に成功する」前提での作りは良くないのでこちらもtry-catchで囲ってしっかりExceptionを捕捉すべき
|
45
45
|
}
|
46
46
|
|
47
47
|
// いいね件数
|
@@ -50,9 +50,15 @@
|
|
50
50
|
$data = [$feed_id];
|
51
51
|
$stmt = $this->dbh->prepare($sql);
|
52
52
|
$stmt->execute($data);
|
53
|
-
$result = $
|
53
|
+
$result = $stmt->fetch(PDO::FETCH_ASSOC); //元のコード、変数名間違えてますよ。修正しました。
|
54
54
|
return $result['like_cnt'];
|
55
55
|
}
|
56
|
+
/*
|
57
|
+
SQL作る→$dataに?の分の変数作る→preareする→executeに$data渡して実行
|
58
|
+
まで同じならここも「executeするまでの処理」を共通化したものを作ったほうがスッキリすると思う。
|
59
|
+
要は$sql作って、$dataを配列で渡せば良いので。
|
60
|
+
同じ処理が2回3回以上でてくるようなら共通化を検討しましょう。
|
61
|
+
*/
|
56
62
|
}
|
57
63
|
|
58
64
|
```
|