php - 如何 ORDER BY 哪个参数在 URL 或 MySQL 查询中排在第一位?

标签 php mysql url mysqli parameters

当我运行查询时,它会以随机顺序对标签进行分组。

这是目前的样子:

https://www.example.com/app/user-images.php?tags=peace&tags2=dogs&tags3=aesthetic

图片 #1 - 和平

图片 #2 - 和平

图片 #3 - 狗

图片 #4 - 狗

图片 #5 - 美学

图片 #6 - 和平

预期结果:

图片 #1 - 和平

图片 #2 - 和平

图片 #3 - 和平

图片 #4 - 狗

图片 #5 - 狗

图片 #6 - 美学

有什么办法可以做到这一点?第一个标签是和平,第二个是狗,第三个是基于 URL 的美学。这是我的代码:

$tags = $_GET['tags'];
$tags2 = $_GET['tags2'];
$tags3 = $_GET['tags3'];

$fetch = mysqli_query($conn, "SELECT * FROM users JOIN user_images ON users.username = user_images.username WHERE tags = '$tags' OR tags = '$tags2' OR tags = '$tags3' ORDER BY user_images.tags ASC"); 

我尝试使用 ORDER BY user_images.tags ASC 但这并没有真正帮助,因为无论我将标签放在 URL 中的什么位置,它们的顺序都是相同的。

最佳答案

您可以按多个条件进行排序,因此在这种情况下,将您的搜索词添加到排序中应该可行。例如:

...
ORDER BY tags = '$tags' DESC, tags = '$tags2' DESC, tags = '$tags3' DESC

关于php - 如何 ORDER BY 哪个参数在 URL 或 MySQL 查询中排在第一位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54728688/

相关文章:

php - mysql的多个实例正在运行-centos7

php - 如何将实际的 NULL 值插入到可为空的列中?

javascript - 为什么 Facebook 点赞按钮的 JS 代码使用奇怪的 URL?

regex - 用于验证 URL 中的 '/' 的正则表达式

typescript - 如何使用 TypeScript 在 express 中输入 `request.query`?

php - mysql中的if语句不忽略字段

php - 在php中使用preg_replace删除php中的空格

php - 我无法使用我的密码和电子邮件访问我的管理面板。这是 PHP 和 SQL 相关的

mysql - SQL 从 user_id 列表中获取 user.emails

PHP 获取数据问题