我被编写为从“ tagi”(即列名)返回带有相似标签的行的代码。
我的代码:
require(“ connmysql.php”);
if ($f == "podobne") {
$kategorieProgramu = $string;
$kategorieProgramu = explode(', ', $kategorieProgramu);
$sql = 'SELECT odc_ListaAnime';
$ifs = [];
foreach ($kategorieProgramu as $kategoria) {
$ifs[] = "IF (gatunek LIKE '%" . trim($kategoria) . "%', 1, 0)";
}
$sql .= implode('+', $ifs) . 'AS gatunek';
$sql .= " FROM odc_ListaAnime HAVING gatunek > 0 ORDER BY gatunek DESC LIMIT 3";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while ($row = $result->fetch_assoc()) {
$maxodc = $row['maxodc'];
$anime = $row['nazwa'];
if(getLA("lodc", $anime) == $maxodc){
}else{
echo "- <a href='index.php?str=anime&anime=$anime'>$anime</a><br>";
}
}
} else {
echo "<h1> ERROR 404 </h1>";
}
$conn->close();
}
但是该代码无法正常工作...我收到错误消息:
注意:尝试在第301行的/home/chumorekgn/www/maneku/get.php中获取非对象的属性
错误404
301线是
如果($ result-> num_rows> 0){
当我将var_dump添加到$ sql
我有
string(173)“ SELECT odc_ListaAnime; IF(gatunek LIKE'%Komedia%',1,0)+ IF(gatunek LIKE'%Romans%',1,0)AS gatunekFROM odc_ListaAnime HAgaing gatunek> 0 ORDER BY gatunek DESC LIMIT 3 ”
谁能帮我?
最佳答案
如果是mysql,请使用','分隔列,而不是';'在您的查询中:
"SELECT odc_ListaAnime, IF...
您还需要实现一些pdo错误的捕获,以查看实际的SQL错误。
添加此包装器:
if ($result) {
$result->num_rows > 0) {
...
}
} else {
echo 'database error: '.$conn->errorInfo(); die;
}