【问题标题】:Loop and if Statement in phpphp中的循环和if语句
【发布时间】:2012-06-28 12:06:37
【问题描述】:

我有以下代码。

<?php if ( $showdata['venue'] == "Brean Sands" ) {echo "<div class=\"gigpress-related-park\">"; echo $showdata['date_long']; echo $showdata['venue']; echo "</div>"; } ?>
<?php if ( $showdata['venue'] == "Camber Sands" ) {echo "<div class=\"gigpress-related-park\">"; echo $showdata['date_long']; echo $showdata['venue']; echo "</div>"; } ?>
<?php if ( $showdata['venue'] == "Pakefield" ) {echo "<div class=\"gigpress-related-park\">"; echo $showdata['date_long']; echo $showdata['venue']; echo "</div>"; } ?>
<?php if ( $showdata['venue'] == "Prestatyn Sands" ) {echo "<div class=\"gigpress-related-park\">"; echo $showdata['date_long']; echo $showdata['venue']; echo "</div>"; } ?>
<?php if ( $showdata['venue'] == "Southport" ) {echo "<div class=\"gigpress-related-park\">"; echo $showdata['date_long']; echo $showdata['venue']; echo "</div>"; } ?>

这可以很好地从我的数据库中提取信息,但我需要它循环或重复,以便为每个场地显示多个日期。 db 中的每个场地都有多个日期,但正如代码所示,它只返回第一个日期的值。我需要其他人也出现。

如何让这段代码循环,同时只查看一个场地并提取所有日期,然后结束?

【问题讨论】:

标签: php loops if-statement while-loop


【解决方案1】:
$query = mysql_query("the query");
while($showdata = mysql_fetch_assoc($query)) {
  put your code here
}

因此,您运行查询以获取所需的所有数据库记录,然后循环将行分配给 $showdata。然后,这将为从数据库查询返回的每一行处理循环内的所有内容

【讨论】:

  • 只需使用 PDO 或 mysqli_* 代替 mysql_*
  • 我明白这一切,除了查询。你什么意思? pastebin.com/bfy1Cmug我相信是我的查询,然后include_once相关,里面包含了上面的代码。
  • @PLB:这是一种替代方案,但不是直接的解决方案。无论您使用 PDO 还是 mysqli,仍然需要循环,它们只是与数据存储交互的替代方式。
  • @Lee 我建议仅出于安全目的使用 pdo 或 mysqli_*。
  • @PLB:我猜每个人都有自己的想法。我有我自己的方式,你也有你的。然而,一点点知识有时会受到伤害。如果 mysqli 使用不当,它的安全性可能会大大降低,并且对系统的危害会更严重。即 mysqli 的一个最大问题(如果你做得好,这也是它的优势)是它允许多个 sql 语句。但正如我所说,我们都有自己解决问题的方法
【解决方案2】:

假设您使用mysql_ 函数从数据库中获取值。这是你应该做的。

$query = mysql_query('SELECT QUERY');
while($showdata = mysql_fetch_assoc($query)) {
    echo "<div class=\"gigpress-related-park\">" . $showdata['venue'] . $showdata['venue'] . "</div>";
}

但是使用 PDO 或 MySQLi 比使用 mysql_ 更好。

【讨论】:

  • 我相信我的值是由以下pastebin.com/bfy1Cmug 获取的,然后通过“相关”加载上述脚本
猜你喜欢
  • 2019-05-02
  • 1970-01-01
  • 2013-11-01
  • 1970-01-01
  • 2017-08-06
  • 2013-07-10
  • 2014-01-26
  • 2013-06-09
  • 2013-10-18
相关资源
最近更新 更多