如何将多个返回的 SQL 行合并为一个字符串

卡森

我有一个系统,用户可以在其中提交一篇文章(基本上是任何长度的文本),当它提交到数据库时,它会被分解成段落并放入自己的paragraphs表格中。第二个表是articles表,其中包含article_id (primary key)title (title of article)idUsers (id of user that submitted article)我能够成功地将数据提交到表中,但是当我查询以尝试获取段落时,使用:

$q = "SELECT articles.article_id, articles.title, paragraphs.paragraph, articles.date, articles.idUsers FROM articles JOIN paragraphs ON articles.article_id = paragraphs.article_id WHERE idUsers = '$idUsers' AND articles.article_id = '$article_id'";
$r = mysqli_query($conn, $q);

返回了多行,每行都提供相同的信息(段落列除外,它具有唯一的段落文本。但标题和日期返回了两次)。这是我所期望的,但我不想两次返回所有内容。例如,如果文章中有两个段落,一个 say"random text 1"和另一个 say "random text 2",这两个都将返回,这很好,但是article_idarticle_title, 和articles.date等也会与唯一的段落一起在每行中返回文本。这意味着当我回显所有这些值时,所有内容都会回显两次。当我将这些值放在 a 中时<div></div>,就像这样,

echo '<div class="get-article-container">';
echo '<div id="articleTitle">'.$row['title'].'</div>';
echo '<div id="articleContents">'.$row['paragraph'].'</div>';
echo '<input type="hidden" value="'.$row['article_id'].'" class="article_id_value">';
echo '</div>';

它创建了两个divs而不是一个,因为要返回多行。我想将这些$row['paragraph']组合起来将文章中的所有文本放在一个 div 中,但它应该在一个 div 中,而不是两个。有什么建议么?

马努克里希纳

您可以通过格式化之前的值然后回显它们来完成此操作即使您跳过空检查,它也会返回与标题相同的结果,并且所有返回的行中的文章 ID 都相同。

foreach($r as $row){
  (!$title)?$title=$row['title']:$title;
  $paragraph .= '<p>'.$row['paragraph'].'</p>';
  (!$articleId )?$articleId =$row['article_id']:$articleId ;
  $articleId = $row['article_id'];
}

echo '<div class="get-article-container">';
echo '<div id="articleTitle">'.$title.'</div>';
echo '<div id="articleContents">'.$paragraph .'</div>';
echo '<input type="hidden" value="'.$articleId .'" class="article_id_value">';
echo '</div>';

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将对象合并为一个字符串

来自分类Dev

将列表合并为一个字符串

来自分类Dev

将多行的选定列合并为一个字符串

来自分类Dev

codeigniter将字段名和行值合并为一个字符串

来自分类Dev

如何搜索SQL表列文本并挑选一个字符串或返回最高数字

来自分类Dev

如何将多个整数合并为一个字符串并在两者之间添加符号?

来自分类Dev

将两个float数据框合并为一个字符串数据框

来自分类Dev

将数字的日期格式与其他文本合并为一个字符串

来自分类Dev

如何在SQL Server中的字符串中获取最后一个字符

来自分类Dev

如何在SQL Server中的字符串中获取最后一个字符

来自分类Dev

SQL Server:如何根据下一个字符从字符串替换

来自分类Dev

Access SQL中的一个字符串中有多个参数值

来自分类Dev

将多个字符串数组合并为一个

来自分类Dev

将多个字符串合并为一个参数

来自分类Dev

如何将一个字符串变成多个字符串?

来自分类Dev

如何在SQL Server的两个varchar字符串之间找到一个字符串?

来自分类Dev

熊猫:如何将行转换为一个字符串?

来自分类Dev

用另一个字符串SQL将字符串替换为单引号

来自分类Dev

使用SQL将子字符串长度可变的单元格中的一个字符串拆分为几个不同的列

来自分类Dev

如何在SQL select语句中用另一个字符串值替换指定的字符串值?

来自分类Dev

SQL:基于行中的第一个字段将2行合并为1行

来自分类Dev

MS SQL 将选择合并为一个,字符分隔符字符串

来自分类Dev

将两个字符串方法合并为一个方法

来自分类Dev

我怎么能一个字符串分隔成列,如果我有多个行和字符串都在SQL不同长度的?

来自分类Dev

如何将多个字符组合成一个字符串?

来自分类Dev

如何将多个字符组合成一个字符串?

来自分类Dev

如何将两个字符串的cssText合并为一个?

来自分类Dev

我如何使以下SQL语句正常工作并在选择一个字符串时返回联接?

来自分类Dev

如何使用`= +`运算符将多个字符串合并为一个?-Java

Related 相关文章

  1. 1

    如何将对象合并为一个字符串

  2. 2

    将列表合并为一个字符串

  3. 3

    将多行的选定列合并为一个字符串

  4. 4

    codeigniter将字段名和行值合并为一个字符串

  5. 5

    如何搜索SQL表列文本并挑选一个字符串或返回最高数字

  6. 6

    如何将多个整数合并为一个字符串并在两者之间添加符号?

  7. 7

    将两个float数据框合并为一个字符串数据框

  8. 8

    将数字的日期格式与其他文本合并为一个字符串

  9. 9

    如何在SQL Server中的字符串中获取最后一个字符

  10. 10

    如何在SQL Server中的字符串中获取最后一个字符

  11. 11

    SQL Server:如何根据下一个字符从字符串替换

  12. 12

    Access SQL中的一个字符串中有多个参数值

  13. 13

    将多个字符串数组合并为一个

  14. 14

    将多个字符串合并为一个参数

  15. 15

    如何将一个字符串变成多个字符串?

  16. 16

    如何在SQL Server的两个varchar字符串之间找到一个字符串?

  17. 17

    熊猫:如何将行转换为一个字符串?

  18. 18

    用另一个字符串SQL将字符串替换为单引号

  19. 19

    使用SQL将子字符串长度可变的单元格中的一个字符串拆分为几个不同的列

  20. 20

    如何在SQL select语句中用另一个字符串值替换指定的字符串值?

  21. 21

    SQL:基于行中的第一个字段将2行合并为1行

  22. 22

    MS SQL 将选择合并为一个,字符分隔符字符串

  23. 23

    将两个字符串方法合并为一个方法

  24. 24

    我怎么能一个字符串分隔成列,如果我有多个行和字符串都在SQL不同长度的?

  25. 25

    如何将多个字符组合成一个字符串?

  26. 26

    如何将多个字符组合成一个字符串?

  27. 27

    如何将两个字符串的cssText合并为一个?

  28. 28

    我如何使以下SQL语句正常工作并在选择一个字符串时返回联接?

  29. 29

    如何使用`= +`运算符将多个字符串合并为一个?-Java

热门标签

归档