0

我在 PHP 语句中有这个查询foreach

<?php $i = 2; $j = 0; foreach($listings AS $listing): $i = $i == 2 ? 1 : 2;?>

...

<?php
    $db =& JFactory::getDBO();
    $query = "SELECT COUNT(product) FROM my_table WHERE contentid = 'I want content id here'";
    $db->setQuery($query);
    $count = $db->loadResult();

    echo ($count); //this print the count
?>

...

<?php endforeach;?>

如何从 MySQL 数据库中检索每个“列表”的内容 ID?

$query = "SELECT COUNT(product) FROM my_table WHERE contentid = '**I want content id here**'";

我正在使用 joomla 2.5 和 Jreviews。<?php echo $listing['Listing']['listing_id'];?>列表 id在foreach语句中被“调用” 。

4

2 回答 2

1

您可以简单地将变量名称添加到查询中,假设 $i 是 id:

$query = "SELECT COUNT(product) FROM my_table WHERE contentid = $i";

或更好

$query = sprintf("SELECT COUNT(product) FROM my_table WHERE contentid = %d", $i);
于 2012-04-13T15:10:41.773 回答
1

我认为最好的方法是在输出之前准备好所需的数据。在这种特殊情况下,您只能在 WHERE 子句中使用带有 IN 语句的 ONE SQL 查询。

于 2012-04-13T15:18:07.287 回答