在php中添加所有行值

This is the table

store_reviews

id   rev_star
1       2
2       5
3       4

What I want to do is to get all the rows and add stars and divide by the count of rows (average) like 2+5+4/3

I wrote a code but it doesn't get all the rows added.

<?php
          $stmtrev = $mysqli->prepare("SELECT * FROM store_reviews WHERE store_id=?");
          $stmtrev->bind_param("i", $_GET['storeid']);
          $stmtrev->execute();
          $revrows = $stmtrev->get_result();
          $stmtrev->close();
          $total=0;
          while ($stars = $revrows->fetch_assoc()) 
          {
            $count = ($total + $stars['rev_star']);
          }
           $count/count($revrows->fetch_assoc());
        ?>

Can anyone explain what's wrong and what could be done?

This is one of those places where your database can do the work for you

SELECT AVG(rev_star) as average, 
FROM store_reviews 
WHERE store_id=?

As to why your PHP script isn't working properly, you're counting the number of columns in your database, not the number of rows. Worse, you're doing this by trying to pop a result set off the result stack after having looped through the full result stack. The result object tells you how many rows were returned

$total = 0;
while ($stars = $revrows->fetch_assoc()) $total += $stars['rev_star'];
$avg = $total / $revrows->num_rows;