首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我试图在php中运行一个查询,它在phpMyAdmin中工作,而不是在脚本中运行。

我试图在php中运行一个查询,它在phpMyAdmin中工作,而不是在脚本中运行。
EN

Stack Overflow用户
提问于 2021-03-05 06:04:36
回答 1查看 48关注 0票数 0

Iam试图为基于博客的项目查询获取相关文章:

代码语言:javascript
运行
复制
 $query = mysqli_query($con, "SELECT * FROM posts WHERE cat_id like '%$cat_arr[i]%' AND NOT post_id = '$postid'");

问题:在phpMyAdmin中作为普通查询运行时,它将根据需要获取3-4行,但在脚本中,它将获取posts表中的所有行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-05 07:15:16

变量'%$cat_arr[i]%似乎是空的。

因此,如果您正在运行该查询:

代码语言:javascript
运行
复制
$query = mysqli_query($con, "SELECT * FROM posts WHERE cat_id like '%$cat_arr[i]%' AND NOT post_id = '$postid'");

而不是两个条件,只有一个条件post_id = '$postid'正在得到考虑。

如果在LIKE %%中通过空白,则等于不添加条件。

因此,最好的解决方案是首先评估变量:

代码语言:javascript
运行
复制
if (isset($cat_arr[i]) && ! empty($cat_arr[i]) && ! empty($postid)) {
 $query = mysqli_query($con, "SELECT * FROM posts WHERE cat_id like '%$cat_arr[i]%' AND NOT post_id = '$postid'");
}
else {
 // Another condition
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66487598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档