gpt4 book ai didi

php - 1对多mysql语句加上显示图像和文本

转载 作者:行者123 更新时间:2023-11-29 14:03:20 25 4
gpt4 key购买 nike

大家好,我对这个一对多声明有一个小问题。我正在 mysql 数据库和文件夹中添加图像,该部分是完美的。但当我想展示它们时,这就是我棘手的部分。我不知道我创建数据库的方式或代码中的问题出在哪里。所以这两个都是:

我的两个表格是文本和图像在文本表中:text_id - 主要text_field - 唯一

在 imagess 表中:id - 主要姓名标题路径

我的代码是这样的:

     <?php

$result = mysql_query("SELECT * FROM text text_id, imagess id WHERE (text_id=id AND text_field=title) ");

while($row = mysql_fetch_assoc($result)){
echo '<br>№'.$row['text_id'].'<br>';

echo''.$row['title'].'<br>'
.$row['text_field'];

echo'<br><img src="'.$row['path'].'?url='.$row['path'].'/>';
}

?>

我的目标是学习如何使用 2-3 个图像显示 1 个标题 + 文本。我希望有人能解释我的错误在哪里,因为从我正在读的书中没有这样的事情。

提前谢谢您。

最佳答案

在一对多关系中,您必须忽略多次出现的“1”。您还必须通过外键加入您的 imagess 表。您的查询中有错误,“FROM text text_id”表示您在名为 text_id 的文本上创建了别名。

<?php
$currentTextId = -1;
$result = mysql_query("SELECT * FROM text, imagess WHERE (text.text_id=imagess.text_id) ORDER BY text.text_id");

while($row = mysql_fetch_assoc($result)){
if($row['text_id']!=$currentTextId){
$currentTextId=$row['text_id']
echo '<br>№'.$row['text_id'].'<br>';
}

echo''.$row['title'].'<br>'.$row['text_field'];
echo'<br><img src="'.$row['path'].'?url='.$row['path'].'/>';
}

?>

关于php - 1对多mysql语句加上显示图像和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14748952/

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