|
|
|
| Хочу сосчитать сумму всех просмотров заметок одной категории.
Для этого делаю такой запрос в БД (вытаскиваю из поля post_view численные значения в массив)
$query = mysql_query("SELECT post_view FROM postInfo WHERE post_genre = 'romantic'");
$count_view_romantic = mysql_fetch_array($query);
Понятно, что в $count_view_romantic содержится массив, но как посчитать сумму всех значений? Бьюсь уже несколько часов.
array_sum не помогает,
print_r ($count_view_romantic); выводит только Array ( [0] => 32 [post_view] => 32 );
Я догадываюсь, что решение очень простое, пожалуйста, помогите его найти. | |
|
|
|
|
|
|
|
для: anton_m
(26.06.2009 в 08:57)
| |
<?php
$query = "SELECT post_genre, SUM(post_view) AS total FROM postInfo GPOUP BY post_genre ";
$res = mysql_query($query);
while ($count = mysql_fetch_array($res){
echo $count['post_genre']." -> ".$count['total']."<br />";
}
?>
|
Попробуйте вот это. | |
|
|
|
|
автор: AcidTrash(кафе) (26.06.2009 в 09:14) |
|
|
для: Valick
(26.06.2009 в 09:09)
| | while ($count = mysql_fetch_array($res){
Зачем использовать mysql_fetch_array если нужны только ассоциированные данные. Или это так на будущее :) | |
|
|
|
|
|
|
|
для: AcidTrash(кафе)
(26.06.2009 в 09:14)
| | Это вообще никак...))
Просто "довесок" к запросу) | |
|
|
|
|
|
|
|
для: Valick
(26.06.2009 в 09:17)
| | попробовал. пишет вот это
Parse error: syntax error, unexpected '{' in...
Сейчас ищу ошибку. | |
|
|
|
|
|
|
|
для: anton_m
(26.06.2009 в 09:19)
| | скобку забыл я закрыть в условии цикла
<?php
$query = "SELECT post_genre, SUM(post_view) AS total FROM postInfo GPOUP BY post_genre ";
$res = mysql_query($query);
while ($count = mysql_fetch_array($res)){
echo $count['post_genre']." -> ".$count['total']."<br />";
}
?>
|
| |
|
|
|
|
|
|
|
для: Valick
(26.06.2009 в 09:23)
| | да, спасибо. но теперь пишет вот такое предупреждение? с чем это здесь может быть связано?
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in | |
|
|
|
|
|
|
|
для: anton_m
(26.06.2009 в 09:36)
| | дайте кусок кода вместе с подключением к базе
а... ненадо.. просто ошибка синтаксиса не GPOUP а GROUP | |
|
|
|
|
|
|
|
для: Valick
(26.06.2009 в 09:40)
| |
<?php
$db = mysql_connect('localhost','user', password);
if (!isset ($db))
{
die("Соединиться с базой не удалось<br />");
}
$sel = mysql_select_db("nameDB");
?>
|
А сам запрос
<?php
$query = "SELECT post_genre, SUM(post_view) AS total FROM postInfo GPOUP BY post_genre ";
$res = mysql_query($query);
while ($count = mysql_fetch_array($res)){
echo $count['post_genre']." -> ".$count['total']."<br />";
}
?>
|
при этом все другие запросы работают, с этим что-то не так | |
|
|
|
|
|
|
|
для: anton_m
(26.06.2009 в 09:47)
| | я же написал чуть выше) обычная опечатка
исправьте GPOUP на GROUP
$query = "SELECT post_genre, SUM(post_view) AS total FROM postInfo GROUP BY post_genre ";
|
| |
|
|
|
|
|
|
|
для: Valick
(26.06.2009 в 09:55)
| | Все работает, спасибо тебе, Мастер кода и запросов!))
Последняя тогда просьба.
Здесь все выводится в цикле и сразу для всех жанров.
Как сделать запрос для каждого отдельного жанра? мне просто нужно поместить это значение в переменную, для дальнейшей работы с ним? | |
|
|
|
|
|
|
|
для: anton_m
(26.06.2009 в 10:04)
| | Запрос для каждого отдельного жанра стоит делать если на одной странице Вы собираетесь выводить только этот жанр.
Попробуйте GPOUP BY post_genre заменить на Ваше условие WHERE post_genre = 'romantic'
Но если вы собираетесь распечатывать статистику по жанрам, то лучше всё получить одним запросом и сформировать массив
замените
echo $count['post_genre']." -> ".$count['total']."<br />";
|
на
$mass[$count['post_genre']]=$count['total'];
|
| |
|
|
|
|
|
|
|
для: Valick
(26.06.2009 в 10:11)
| | Спасибо, огромное.
Вы решили мою проблему.)
Тему можно закрывать. еще раз спасибо! | |
|
|
|