我有这个PHP代码
if(isset($_POST['submit'])){
$likeString = '%' . $_POST['search'] . '%';
$query = $conn->prepare("SELECT * FROM images WHERE image_caption LIKE ?");
$query->bind_param('s', $likeString);
$query->execute();
var_dump($likeString);
if (!$query) {
printf("Query failed: %s\n", $mysqli->error);
exit;
}
if($res->num_rows > 0) {
while ($row = $res->fetch_assoc()) {
echo "<br>Title: " . $row['image_caption'];
}
} else {
echo " <br> 0 results";
}
}
Run Code Online (Sandbox Code Playgroud)
var_dump($likeString)显示我通过搜索表单正确发布的单词.我也试过直接运行phpmyadmin来运行这个查询
SELECT*FROM images WHERE image_caption LIKE"%Volvo%"
我收到了1个正确的结果.在页面上我看到了0 results.试图玩获取:
$res->fetch_assoc()
$res->fetchAll()
$res->fetch()
Run Code Online (Sandbox Code Playgroud)
没有一个显示任何结果.我确信这是一个非常愚蠢和简单的错误,但看不到它.请帮忙.
我没有Call to a member function bind_param() on …
我试图只获取循环中出现的第一个元素。所以如果我有类似的东西
@foreach($entries as $entry)
@if($element == 1)
// do something
@else
// do something else
@endif
@endforeach
Run Code Online (Sandbox Code Playgroud)