2016-02-23 2 views
0
while($pp_info = mysqli_fetch_array($sqlpinfo)){ 

      $product_title = $pp_info['book_name']; 
      $books_image = $pp_info['book_upload']; 
      $books_price = array($pp_info['book_price']); 
} 

Array ([0] => 324) 
Array ([0] => 500) 
Array ([0] => 543) 
Array ([0] => 22) 

Как я могу получить сумму каждого номера?Почему мой массив ведет себя так:

Я использую array_sum($books_price);

и результат 324 500 543 22

ответ

0

Вы можете собрать все ваши цены книги в один массив $books_price массив через $books_price[] = $pp_info['book_price'];, а затем после цикла вычислить его сумма

$books_price = array(); 

while($pp_info = mysqli_fetch_array($sqlpinfo)){ 

     $product_title = $pp_info['book_name']; 
     $books_image = $pp_info['book_upload']; 
     $books_price[] = $pp_info['book_price']; 
} 

$sum = array_sum($books_price); 

// For debug 
var_dump($books_price) 
echo $sum; 
+0

не работаю для меня :( – Tubolito

+0

вы используете '$ books_price [] = $ pp_info ['book_price'];'? если да, вы можете написать в комментарии, что вы получаете с помощью 'var_dump ($ books_price)'? – Armen

+0

массив (1) {[0] => строка (3) "324"} 324Array ([0] => 324) array (1) {[0] => строка (3) "500"} 500Array ([0 ] => 500) array (1) {[0] => string (3) "543"} 543Array ([0] => 543) array (1) {[0] => string (2) "22"} 22Array ([0] => 22) – Tubolito

1

Вы должны использовать SUM(book_price) As Total в вашем запросе mysql.

SELECT SUM(column_name) FROM table_name; 

Проверьте это link для более подробной информации.

В PHP,

$book_total = 0; // define variable outside loop 
while($pp_info = mysqli_fetch_assoc($sqlpinfo)){ 
    $product_title = $pp_info['book_name']; 
    $books_image = $pp_info['book_upload']; 
    $books_price = $pp_info['book_price']; 
    $book_total += $books_price; // perform addition operation 
} 
echo "Book Total: $book_total"; 

Надеется, что это поможет вам :)

+0

@Tubolito: Отметьте этот ответ. Дайте мне знать, если у вас есть какие-либо вопросы в ответе. –

+0

У меня возникла новая проблема if (isset ($ _ POST ['updatecart '] [$ pro_id])) { $ qty = $ _POST [' qty '] [$ pro_id]; \t \t \t \t $ special_id = $ _POST ['updatecart'] [$ pro_id]; $ sqlqty = mysqli_query ($ connect, "UPDATE cart SET qty = '$ qty' WHERE p_id = '$ special_id' AND user = '$ user'"); \t $ user = ''. $ _SESSION ['userName']. ''; \t $ total = $ books_price * $ qty; } – Tubolito

+0

Когда я нажимаю update .. Я хотел бы умножить book_price и количество. например .. book_price = $ 6 * 6 шт. = $ 36 .. моя проблема в том, что я не могу его полностью ... это. Помогите пожалуйста – Tubolito

0

переход от

while($pp_info = mysqli_fetch_array($sqlpinfo)){ 

      $product_title = $pp_info['book_name']; 
      $books_image = $pp_info['book_upload']; 
      $books_price = array($pp_info['book_price']); 
} 

в

$bookpricearray = array(); 

while($pp_info = mysqli_fetch_array($sqlpinfo)){ 

      $product_title = $pp_info['book_name']; 
      $books_image = $pp_info['book_upload']; 
      array_push($bookpricearray,$pp_info['book_price']); 
} 

echo $total_price=array_sum($bookpricearray); 
+0

@Tubolito: надеюсь, что вы поймете –

Смежные вопросы