0

好的。这是我到目前为止的代码......

mysql_query($userrating);
$userratingquery =  "SELECT rating FROM user_rating WHERE user_id=$sellerid";
$userrating = mysql_query($userratingquery) or die('SQL Error :: '.mysql_error());
$userrating = array();

while(($row =  mysql_fetch_assoc($userrating))) {
   $rating[] = $row['rating'];
}

if (!empty($userrating)) {
   $averagerating = array_sum($userratingary); 
   print_r($userratingary);
} else {
   echo '<img src="images/star.png" class="ratingstar" /><img src="images/star.png" class="ratingstar" /><img src="images/halfstar.png" class="ratingstar" />';
}

我要做的是创建一个名为“rating”的数据库值数组,平均该数组中的值,然后我想将这些值向上取整。因此,例如,如果这些值的平均值最终为 3.7,那么平均值将变为 4。

从那里我可以将结果应用于代码......我现在的数组遇到了很多麻烦。我现在遇到的错误是......

警告:mysql_fetch_assoc():提供的参数不是有效的 MySQL 结果资源

有人可以指出我正确的方向吗?

4

1 回答 1

2

你的问题在这里:

$userrating = mysql_query($userratingquery) or die('SQL Error :: '.mysql_error());
$userrating = array();

您正在将 $userrating 变量重置为数组,因此当您尝试获取 mysql 行时,$userrating mysql 结果不再有效。

为您的 $userrating 数组使用不同的变量名,或者为您的 mysql 结果使用另一个变量名。

于 2012-11-24T20:08:37.867 回答