如何从数据库循环中获取值并将它们相加以备后用
Posted
技术标签:
【中文标题】如何从数据库循环中获取值并将它们相加以备后用【英文标题】:How to get values from database loop and add them up for later use 【发布时间】:2012-03-11 02:12:21 【问题描述】:我正在数据库中查询在线忠诚度计划的不同奖品价值。
我知道这将是一个简单的问题,但我仍然习惯 php,所以这里开始......
这是我目前所拥有的:
<?php $sqlprize="SELECT prizeid FROM wp_scloyalty_orders WHERE userid = '$user_id'";
$resultprize=mysql_query($sqlprize); ?>
<?php while($rows=mysql_fetch_array($resultprize))
query_posts('post_type=prizes&showposts=-1&p='.$rows['prizeid'].''); while (have_posts()) : the_post();
$my_meta = get_post_meta($post->ID,'_my_meta',TRUE);
//echo $my_meta['pointsvalue'];
endwhile;
wp_reset_query();
?>
基本上我想要它,所以每次循环数据库查询时,它都会将值 (my_meta['pointsvalue'] 添加到一个数组中,我可以在循环之外使用它......
谢谢!
编辑-----
<?php $purchasevalue=array(); ?>
<?php $sqlprize="SELECT prizeid FROM wp_scloyalty_orders WHERE userid = '$user_id'";
$resultprize=mysql_query($sqlprize); ?>
<?php while($rows=mysql_fetch_array($resultprize))
query_posts('post_type=prizes&showposts=-1&p='.$rows['prizeid'].''); while (have_posts()) : the_post();
$my_meta = get_post_meta($post->ID,'_my_meta',TRUE);
$purchasevalue[] = $my_meta['pointsvalue'];
endwhile;
wp_reset_query();
?>
<?php echo array_sum($purchasevalue) ?>
谢谢各位,最后整理好了……这是一个好方法吗?
【问题讨论】:
您是否打算在代码 sn-p 范围内或应用程序的任何地方引用派生值? 应用程序中的任何地方,使用它来减去每个用户在其帐户中剩余的点数。认为我对它进行了排序......它仍然有效,你认为这是一个很好的方法吗? 如果我是你,我会将此值作为成员添加到用户帐户对象,因此当他们登录时,您计算金额,然后通过用户帐户对象设置值。然后你可以像$user->getPointsValue()
一样检索它。
【参考方案1】:
您可以使用 array_push 向数组添加值
$array = array();
while()....
$my_meta = ....
array_push($array, $my_meta);
end while;
//Your array is now
print_r($array);
希望这就是你要找的东西
【讨论】:
谢谢,是的,这样就可以了,但在我读到这篇文章之前,我想我自己已经整理好了。你觉得可以吗?以上是关于如何从数据库循环中获取值并将它们相加以备后用的主要内容,如果未能解决你的问题,请参考以下文章
如何从 <p> 标记中的数据库中获取值并将它们发布到具有相同 ID 的数据库中