gpt4 book ai didi

php - 我是否使用了太多的 MySQL 查询来获取所有具有特定标签的图像?

转载 作者:行者123 更新时间:2023-11-30 21:56:16 26 4
gpt4 key购买 nike

我的数据库中有以下 3 个表。

Table: Images
Columns: Image_ID, Title, Description, Author, Date, Path, Rating

Table: Tags
Columns: Tag_ID, Title

Table: TagsConnection
Columns: Image_ID, Tag_ID

为了得到某个标签对应的所有图片,我执行这段代码。

<?php

$tagName = $_SERVER['QUERY_STRING'];
$realTagName = substr($tagName, 1);
$realestTagName = str_replace('%20', ' ', $realTagName);

$sql = "SELECT * FROM tags WHERE tag='$realestTagName'";
$result = mysqli_query($conn, $sql);
$getResult = mysqli_fetch_assoc($result);
$tagId = $getResult['id'];

$sql2 = "SELECT * FROM tagsconnection WHERE tagid='$tagId'";
$result2 = mysqli_query($conn, $sql2);

while ($row = mysqli_fetch_assoc($result2)) {
$imageId = $row['imageid'];
$sql3 = "SELECT * FROM image WHERE id='$imageId'";
$result3 = mysqli_query($conn, $sql3);
$getResult3 = mysqli_fetch_assoc($result3);
echo '<div class="imageContainer">
<h1>'.$getResult3['name'].'</h1>
<a href="imageInfo.php?='.$getResult3["path"].'">
<img class="uploadedImg" src="uploads/'.$getResult3["path"] .'" alt="Random image" />
</a>
</div>';
}


?>

我有种不好的预感,觉得自己没有按应有的方式去做,所以我决定在这里四处询问,并尽可能获得一些提示和指示。

最佳答案

使用连接,这是一个基本的例子

    SELECT * FROM tags
JOIN tagsconnection ON tagsconnection.tagid=tags.id
JOIN image ON image.id=tagsconnection.imageId
WHERE tag=$realestTagName

如果您不熟悉联接,这里有一个很好的教程 https://www.w3schools.com/sql/sql_join.asp

关于php - 我是否使用了太多的 MySQL 查询来获取所有具有特定标签的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45108624/

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