X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Как вытащить сумму значений из таблицы mysql
Mapshal
Mapshal
Topic Starter сообщение 27.2.2015, 13:22; Ответить: Mapshal
Сообщение #1


Бывалый
****


Группа: Banned
Сообщений: 295
Регистрация: 2.3.2011
Поблагодарили: 48 раз
Репутация:   14  


Есть запрос
$zr=mysql_query("SELECT * FROM users WHERE referer='$ref_2'");
$vzr = mysql_fetch_assoc( $zr );

Как получить сумму значений $vzr['ref_b']

0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 27.2.2015, 13:28; Ответить: x64
Сообщение #2


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3544
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2881 раз
Репутация:   294  


Код
$zr = mysql_query("SELECT SUM(`ref_b`) FROM users WHERE referer = '$ref_2'");
$vzr = mysql_fetch_row($zr);
echo $vzr[0]; # вывод суммы


PS: Надеюсь, $ref_2 у Вас проходит предварительную обработку, а не берётся напрямую из $_SERVER['HTTP_REFERER']?


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Mapshal
Mapshal
Topic Starter сообщение 27.2.2015, 14:11; Ответить: Mapshal
Сообщение #3


Бывалый
****


Группа: Banned
Сообщений: 295
Регистрация: 2.3.2011
Поблагодарили: 48 раз
Репутация:   14  


x64, Не выводит, давайте покажу полностью что я наделал

$ref = mysql_query("SELECT * FROM users WHERE referer='$referer'");
while( $araayref = mysql_fetch_assoc($ref)) {
$ref_2 = $araayref['pk_user'];
$a=mysql_query("SELECT COUNT(1) FROM users WHERE referer='$ref_2'");
$b = mysql_fetch_array( $a );
$b[0];
$zr=mysql_query("SELECT SUM (`ref_b`) FROM users WHERE referer='$ref_2'");
$vzr = mysql_fetch_assoc( $zr );
echo "<tr><td>".$araayref['flname']."</td><td>".$araayref['ref_b']."</td><td>".$b[0]."</td><td>".$vzr[0]."</td></tr>";}
}

Первое выводи имя, второе $araayref['ref_b'], третье количество $a=mysql_query("SELECT COUNT(1) FROM users WHERE referer='$ref_2'"); и четвертое должно выводить сумму ref_b где referer='$ref_2'.

Вот четвертое не выводит ничего.

x64, Спасибо, оказывается все работает, не пойму только почему, но пробовал тот вариант что вы мне дали, сначала не работал, потом попробовал другие и опять попробовал ваш, все заработало.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
x64
x64
сообщение 27.2.2015, 17:08; Ответить: x64
Сообщение #4


F.A.L.L.O.U.T.
*******

Группа: Super Moderator
Сообщений: 3544
Регистрация: 30.6.2011
Из: Железнодорожный (Балашиха)
Поблагодарили: 2881 раз
Репутация:   294  


Код
$referer2 = mysql_real_escape_string($referer); # обязательно, если $referer не экранирована
$ref = mysql_query("SELECT * FROM users WHERE referer='$referer2'"); # отправить запрос
while( $araayref = mysql_fetch_assoc($ref)) { # получать результат, пока есть
    $ref_2 = $araayref['pk_user']; # если результат содержит кавычку или завершающий
    # обратный слеш, строка ниже будет выдавать ошибку
    
    $a = mysql_query("SELECT COUNT(1) FROM users WHERE referer='$ref_2'"); # отправляем второй запрос
    /*
        COUNT(1) — что ожидается в ответ?
        чаще всего используется в таком виде:
        COUNT(*) — вернуть общее число записей
        можно ещё так:
        COUNT(`field`) — где `field` — имя поля, в этом случае возвращается число записей
        без учёта значений NULL
    */
    $b = mysql_fetch_array($a); # тут нужно mysql_fetch_row()
    
    $b[0]; # это что?
    
    $zr = mysql_query("SELECT SUM(`ref_b`) FROM users WHERE referer='$ref_2'");
    $vzr = mysql_fetch_assoc( $zr ); # почему снова assoc? в коде явно указано row
    echo "<tr><td>".$araayref['flname']."</td><td>".$araayref['ref_b']."</td><td>".$b[0]."</td><td>".$vzr[0]."</td></tr>";}
}

Ну и три последовательных запроса к одной таблице как-то не айс.


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Mapshal
Mapshal
Topic Starter сообщение 27.2.2015, 17:19; Ответить: Mapshal
Сообщение #5


Бывалый
****


Группа: Banned
Сообщений: 295
Регистрация: 2.3.2011
Поблагодарили: 48 раз
Репутация:   14  


x64, Понял, спасибо

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) как сохранить на компьютер баннер html5 ?
0 lamun 368 Вчера, 19:11
автор: lamun
Открытая тема (нет новых ответов) Как обменять WM в Apple приложении?
1 GlazunOFF 356 Вчера, 18:25
автор: JOHNY
Открытая тема (нет новых ответов) Как зайти через прокси в Webmoney?
7 metvekot 646 Вчера, 11:15
автор: Infacto
Открытая тема (нет новых ответов) Как закачать файлы на фтп прямо из другого фтп?
Сабж
1 stixia007 386 25.5.2018, 15:22
автор: wertu
Открытая тема (нет новых ответов) Как защитить свои данные в общественном Wi-Fi?
9 unazekoff 355 25.5.2018, 10:22
автор: spomoni


 



RSS Текстовая версия Сейчас: 27.5.2018, 5:55
Дизайн