同志们
无法按帖子标题搜索。这是模型代码:
public function postSearch($posts) : array
{
$sql = "SELECT id, title, content, dateAdded, dateModified FROM posts WHERE title LIKE :termin";
$req = $this->db->prepare($sql);
$req->execute();
return $req->fetchAll(\PDO::FETCH_CLASS, Post::class);
}
这是控制器代码:
public function search(HTTPRequest $req): void
{
$termin = $_POST['termin'];
$posts = $this->postManager->postSearch([
'termin' => "%$termin%"
]);
$this->show('../App/View/search.php', compact('termin', 'posts'));
}
也就是需要在表单中输入标题后,显示文章的预览(这个已经在表单中了)。$posts 数组为空。如果在请求中指定了特定标头而不是 % termin% 掩码,则显示所有内容。原来控制器看不懂面具?
由于在控制器中传递了一个数组
postSearch
,所以这样更正确: