【问题标题】:Using PHP, how to fetch data row by row without using a while loop使用 PHP,如何在不使用 while 循环的情况下逐行获取数据
【发布时间】:2018-12-02 14:37:23
【问题描述】:

在我的数据库中,有一个名为 CAT 的表,其中有一列名为 cat_id。

我需要在不使用 while 循环的情况下逐行从 CAT 表中获取 cat_id 字段。

这就是我目前所拥有的......

$catid = mysqli_query($con,"select * from cat");
$fetchcat = mysqli_fetch_assoc($catid);

现在我需要像下面这样一个一个的数据...

<li><a href="<?php echo $fetchcat['cat_id']; ?>"></a>Men</li>
<li><a href="<? what can i type here to get 2nd row??? ?>"></a>Men</li>

有人可以建议下一步吗?谢谢

【问题讨论】:

  • 不清楚你为什么不想使用循环。有几行要显示,因此您必须以一种或另一种方式循环(通过将所有结果获取到数组中然后循环遍历数组,或者通过 1 到 1 获取行)
  • 我有理由不使用循环...但要告诉您很重要..但我得到了您的回答,您能否建议一个示例代码我如何获取行在数组 n 中,然后我可以一个一个打印....我只是 php 的初学者,没有任何示例我无法学习 n 我非常感谢您回答我的问题....如果您愿意,它将对我有所帮助请给我看一些代码示例......在此先感谢
  • 好的,我添加了一个简单的例子作为答案
  • “我有理由不使用循环” ????那是什么?没有它,这个问题没有任何意义。另外,您是否禁止使用任何类型的迭代语句或仅使用 while 循环?
  • 原因是我不想使用任何循环是...我有一个用 html 写的关键设计如果我使用该设计将不再工作的循环,我不想改变我的设计......我真的需要一个替代循环的解决方案......因为应该有任何代码来逐行获取,可能有一些逻辑我们可以使用没有循环的获取查询.. ...

标签: php mysql sql database


【解决方案1】:

一种或另一种方式,你必须循环......最有效的选择通常是运行查询,然后一个接一个地获取行。

这里有一个代码示例来实现这一点。请注意,由于您需要输出的唯一列是 cat_id,因此在 sql 语句中仅选择该列而不是 select * 的所有可用列更有效。

$result = mysqli_query($con,"select cat_id from cat");
while ($row = mysql_fetch_assoc($result)) {
    ?><li><a href="<?php echo $row['cat_id']; ?>"></a>Men</li><?php
}

【讨论】:

  • 请原谅我的轻率,但如果我们说不使用 while 是因为这样做很重要。该示例不完全是我们正在尝试的代码
猜你喜欢
  • 1970-01-01
  • 2019-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-24
  • 2013-03-28
  • 2017-10-30
  • 1970-01-01
相关资源
最近更新 更多