gpt4 book ai didi

php - 为什么我的 sql 查询不能返回正确的请求?

转载 作者:行者123 更新时间:2023-11-29 12:00:29 24 4
gpt4 key购买 nike

我有一个查询可以运行并获取我需要的所有信息,但它不会执行正确的 WHERE 部分。所以说,如果在 vid.php 上检查 id,然后运行查询,以便它可以提取视频的信息,如 videos.idvideos.name,我如何确保我只获得 1 个视频,但 WHEREvideos.video_tag_id = 类别.video_tag ORDER BY RAND() LIMIT 1. 代码如下。

注意:有 2 个表格(视频和类别)。我正在尝试加入他们两个并根据此查询提取 1 个视频。

$categoryId = (isset($_GET['id']) ? $_GET['id']:NULL);

if ($categoryId) {
try {
// select specific video based on category id
$sql = "SELECT videos.id, videos.name, videos.video_src, videos.pLike, videos.video_tag_id, category.video_tag FROM videos,category WHERE videos.video_tag_id = category.video_tag ORDER BY RAND() LIMIT 1";
$query = $pdo->prepare($sql);
$query->execute();
} catch(Exception $e) {
echo $e->getMessage();
die();
}
//foreach for school
$listCategoryVideo = $query->fetchAll(PDO::FETCH_ASSOC);

}else {
echo "nope";
die();
}//end if video catgeory was found and executed

所以最后有人点击了一个链接,将他们发送到 vid.php?id=3。其中所有内容都是根据 3 (category.video_tag) 的 id 选择的,应该 === video.video_tag_id 并且只选择随机1个。

最佳答案

您没有在 SQL 查询中使用 $categoryId

请更改

"... WHERE videos.video_tag_id = category.video_tag ..."

"... WHERE videos.video_tag_id = category.video_tag AND category.id = ".$categoryId." ..."

也许您必须为您的categoryId 设置正确的字段。在我的示例中,我使用了category.id

关于php - 为什么我的 sql 查询不能返回正确的请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32457326/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com