Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сложение цифр из базы данных

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Сложение цифр из базы данных
Григорий
Отправлено: 17 Июля, 2014 - 15:15:35
Post Id


Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Доброго времени суток!
Прошу помощи
Есть база данных в которой нажодятся цифры
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.         $result = mysql_query("SELECT * FROM pokupki WHERE id_klient = $wh");
  4.         $myrow = mysql_fetch_array($result);
  5.  
  6.         do {
  7.  
  8.                 $price  .= "$myrow[cena]+";
  9.         }
  10.                 while ($myrow = mysql_fetch_array ($result));
  11.  
  12.  


$price - выводит в виде 999999+899999+45345+
а как мне сделать чтобы выводилось сумма???
 
 Top
Sail
Отправлено: 17 Июля, 2014 - 15:56:01
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




Григорий пишет:
Доброго времени суток!
Прошу помощи
Есть база данных в которой нажодятся цифры
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.         $result = mysql_query("SELECT * FROM pokupki WHERE id_klient = $wh");
  4.         $myrow = mysql_fetch_array($result);
  5.  
  6.         do {
  7.  
  8.                 $price  .= "$myrow[cena]+";
  9.         }
  10.                 while ($myrow = mysql_fetch_array ($result));
  11.  
  12.  


$price - выводит в виде 999999+899999+45345+
а как мне сделать чтобы выводилось сумма???

Как-то так:
PHP:
скопировать код в буфер обмена
  1. ...
  2. $summa = 0;
  3. do {
  4.  ...
  5.  $summa += $myrow['cena']
  6. } while (...);
  7. var_dump($summa);
 
 Top
Григорий
Отправлено: 17 Июля, 2014 - 15:59:44
Post Id


Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Огромное спасибо всё работает!!!
 
 Top
DeepVarvar Супермодератор
Отправлено: 17 Июля, 2014 - 16:05:21
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Уважаемые умники - это делается одним запросом на стороне БД:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT SUM(cena) cena FROM pokupki WHERE id_klient = $wh

База сразу вернет сумму и ничего не нужно считать в пыхе.
 
 Top
Sail
Отправлено: 17 Июля, 2014 - 16:07:07
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




DeepVarvar пишет:
Уважаемые умники - это делается одним запросом на стороне БД

А давайте не будем гадать, что автор делает с другими данными, возвращаемыми его запросом Улыбка
 
 Top
DeepVarvar Супермодератор
Отправлено: 17 Июля, 2014 - 16:11:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Другие данные никак не повлияют на подсчет суммы. Тыц
 
 Top
Sail
Отправлено: 17 Июля, 2014 - 16:13:19
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




DeepVarvar пишет:
Другие данные никак не повлияют на подсчет суммы. Тыц

А к чему плодить запросы и обвязку для обработки результатов, если все необходимое уже получено? Улыбка
 
 Top
DeepVarvar Супермодератор
Отправлено: 17 Июля, 2014 - 16:16:44
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Не понимаю в чем прикол. Показать на примере как можно одним запросом вывести полный список клиентов и суммы всех их заказов без дублирования имен клиентов?
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT id_klient, SUM(cena) summa_zakaza
  2.     FROM pokupki
  3.     GROUP BY id_klient
 
 Top
Sail
Отправлено: 17 Июля, 2014 - 16:23:15
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




DeepVarvar пишет:
Не понимаю в чем прикол. Показать на примере как можно одним запросом вывести полный список клиентов и суммы всех их заказов без дублирования имен клиентов?

Ведь явно же видно, что ТС-ом приведен не весь код обработки запроса.
И вопрос ведь не в том, чтобы "одним запросом вывести полный список клиентов и суммы всех их заказов без дублирования имен клиентов". Улыбка
А гадать, что имел ввиду ТС - занятие неблагодарное...

(Отредактировано автором: 17 Июля, 2014 - 16:32:10)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB