Php MYSQLI_查询不返回值
我正在试图弄清楚为什么我的查询不起作用。我试图将每个月的所有金额相加,其中Php MYSQLI_查询不返回值,php,mysqli,Php,Mysqli,我正在试图弄清楚为什么我的查询不起作用。我试图将每个月的所有金额相加,其中status='S'。但是,我得到了以下错误。有什么想法吗 [05-Jul-2013 11:21:30 America/New_York] PHP Fatal error: Cannot use object of type mysqli_result as array 我的代码: $closedsales = mysqli_query($mysqli, "SELECT MONTH(date) as month, s
status='S'
。但是,我得到了以下错误。有什么想法吗
[05-Jul-2013 11:21:30 America/New_York] PHP Fatal error: Cannot use object of type mysqli_result as array
我的代码:
$closedsales = mysqli_query($mysqli, "SELECT MONTH(date) as month, sum(amount) as total FROM sales WHERE user_id = '".$userid."' AND status = 'S' GROUP BY MONTH(date)");
while ( $row = mysqli_fetch_row($closedsales) ) {
$closedsales[$row['month']] = $row['total'];
}
更新:
$closedsales = mysqli_query($mysqli, "SELECT MONTH(date) as month, sum(amount) as total FROM sales WHERE user_id = '".$userid."' AND status = 'S' GROUP BY MONTH(date)");
while ( $row = mysqli_fetch_row($closedsales) ) {
$monthlysales[$row['month']] = $row['total'];
}
foreach($monthlysales as $monthlysale) {
echo $monthlysale;
echo "This worked...";
}
谢谢!我消除了那个错误。但是,由于某些原因,我的数组不包含任何内容。它只打印出这个工作…
这是否可能是因为我在DB中没有每个月的作业?问题在于作业:
$closedsales[$row['month']] = $row['total'];
$closedsales
是由mysqli\u query
返回的结果,它不是您可以分配给的数组。为此使用不同的变量。哇,非常感谢!我从来不知道我不能给它重新赋值。多么简单的解决方案啊。谢谢你,伙计!我将在10分钟内接受答案。如果您重新分配变量,您认为下一次的mysqli\u fetch\u row($closedsales)
迭代将如何工作?哦,从现在起这就完美了。谢谢你的解释!我现在觉得自己很笨。我注意到我的数组是空的。这可能是我在DB中没有的每个月的b/c吗?如上所述,应该使数组为空,这些月份根本不在数组中。好的,谢谢!由于foreach
只循环一次,所以需要调试它。再次感谢主修复!