Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сложить числа, полученные из базы данных
 
 автор: black_joker   (15.06.2006 в 02:48)   письмо автору
 
 

Подскажите что не как.
Мне нужно сложить числа полученные из бд.
В price хранятся числа и нужно их сложить.
но что то не выходит.
я понимаю что запросы обрабатываются в массив, поэтому выходят отдельно.
но как мне этот массив сложить между собой ?


$temp[0] = 80;
$temp[1] = 81;
$temp[2] = 82;

for($i = 0; $i < count($temp); $i ++)
  {
$echo temp($temp[$i]);
}


 //------------------------------------------
function temp($temp)
{
$query = "SELECT * FROM product WHERE id_product = ".$temp;
$result = mysql_query ($query)
  or die ("&#237;&#229; &#239;&#240;&#224;&#226;&#232;&#235;&#252;&#237;&#251;&#233; &#231;&#224;&#239;&#240;&#238;&#241;");

        $Total = 0;
        while($tmp = mysql_fetch_array($result))
        {
$shCart[ ] = $tmp;
$Total += $tmp['price'];
#echo $Total,"<br>";
        }
$Total = ((integer)($Total*100))/100;
if($Total > 0 && $pos = strpos($Total,"."))
{
        $Total = $Total.str_repeat("0",2-strlen(substr($Total,$pos+1)));
}else{
        $Total .= ".00";
}
echo $Total,"<br>";

   
 
 автор: komex   (15.06.2006 в 11:54)   письмо автору
 
   для: black_joker   (15.06.2006 в 02:48)
 

А у тебя что id_product в БД повторяется?
Зачем тебе строка $shCart[ ] = $tmp;?

   
 
 автор: cheops   (15.06.2006 в 12:03)   письмо автору
 
   для: black_joker   (15.06.2006 в 02:48)
 

Хм... а здесь не получится сложить столбцы средствами MySQL?
SELECT SUM(price) AS price FROM product WHERE id_product = ".$temp;

   
 
 автор: Black_joker   (15.06.2006 в 21:59)   письмо автору
 
   для: cheops   (15.06.2006 в 12:03)
 

нет не получается :(

я новичок в PHP но на сколько я понимаю это нельзя сделать
потому что функция обрабатывается массивом.
и повторяется с небольшими изменениями.

вопрос в том как сложить числа из массива между собой. ?
или как сделать чтоб одной функцией без массива по средствам SQL запроса
вывести числа из нужных строк ?

   
 
 автор: cheops   (15.06.2006 в 22:44)   письмо автору
 
   для: Black_joker   (15.06.2006 в 21:59)
 

Для этого также можно воспользоваться функцией array_sum(), которая складывает все элементы массива.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования