Элементарные арифметические операции)))

painbot

Ежик в тумане
есть база DB

таблица 1
kurs
+=========+=======+
| kurs_doll___| kurs_euro|

таблица 2
tovary
+========+========+============+========+
|Код_товара|1столбец|2столбец|3столбец|

как сформировать вызов из БД и подсчет на php, так чтобы по формуле выводилось Итог = (1столбец)+(2столбец *kurs_euro)+(3столбец* kurs_doll)

Заранее благодарен)) и прошу заранее простить за столь элементарные вещи)
 

phprus

Moderator
Команда форума
На правах телепата:
join или подзапросы.

Однако не совсем понятно, что в итоге нужно получить. Итог по каждой строчке таблицы tovary нужен или суммарный итог по всем строкам. Не понятно, как хранятся курсы в таблице kurs, а точнее сколько в ней строк. MySQL умеет вычислять арифметические операции.
 

painbot

Ежик в тумане
ну по примеру допустим есть поля из 2 таблицы

|Код_товара_|1столбец|2столбец|3столбец|
|товарномер1|189,08__|0,00____|0,000___|
|товарномер2|0,00____|0,00____|123,6___|

вот допустим на одной странице мне нужно такое товарномер1 стоит = (1столбец)+(2столбец *kurs_euro)+(3столбец* kurs_doll)
а на следующей уже другой товарномер2 но по этой же формуле но уже из других полей))))
всегда в базе два поля из трех столбцов равны нулю)) поэтому задача упрощается до нельзя))) но сам реализовать так, как умельцы не могу)))
В таблице kurs всего два значения всегда например вот, так: |30,05|45,05| - все))
 

painbot

Ежик в тумане
да и еще обязательно условие что курс евро перемножается со столбцом 2 а доллар с 3, просто там цена в долларах и евро)) вот)))
 

iceman

говнокодер
таблицу курс переделай на currency (iso_name, name) и currency_value (currency_date, iso_name, currency_value)


select col1+col2* ( select currency_val from currency_value where iso_name = 'EUR' and currency_date = now()) as vualya from table

либо сначало выкавыривай курсы, в переменные пхп и потом умножай.
 

painbot

Ежик в тумане
вот выкакать курсы в переменные и нужна незнамо каки сделати)))))))
простой синтаксис - код пожалйста в студию если не затрюднит!
 

Adelf

Administrator
Команда форума
iceman
А че нельзя чтоли так:
select col1+col2* ( select kurs_doll from kurs) as vualya from table
если у него одна только запись в таблице kurs?
 

painbot

Ежик в тумане
<?php
include "config_1.php";
if (!isset($id))
$id = (int)$_GET['id'];
$query = "SELECT col5+col6*( select `Курс ЕВРО` from `Курс`)+col7*( select `Курс $` from `Курс`) FROM `Перечень товаров` WHERE `id`=".$id;
$result = mysql_query($query);
if($result){
while($row = mysql_fetch_assoc($result))
{
echo '' . $row[''];
}
}
?>

не работает(((((((

помогите пож)) что не так?))
 

tz-lom

Продвинутый новичок
painbot
отлаживай,проверяй SQL запрос,откуда нам знать что у тебя за база и какие в ней данные
 

iceman

говнокодер
painbot

ты видишь у меня AS vyalya????

вот и пиши echo '' . $row['vyalya'];
 

iceman

говнокодер
Adelf
де чото не люблю я такие запросы делать, если гарантии нету что второй записи не будет.
 

painbot

Ежик в тумане
PHP:
<?php
include "config_1.php";
if (!isset($id))
$id = (int)$_GET['id'];
$query =mysql_query("SELECT `kurs`.*, `tovary`.* FROM `kurs`, `tovary` WHERE `Код_товара`='$id'");
$x = mysql_fetch_array($query);
echo $x['1столбец'] + ($x['2столбец'] * $x['kurs_euro']) + ($x['3столбец'] * $x['kurs_doll']);
?>
Теперь считает но вот как то неправильно в любом варианте показывает "0" - как быть?))
 

iceman

говнокодер
painbot
начни с чтения книжки по SQL

дальше перейди на книжку по PHP

а дальше загляни сюда http://php.net/mysql_fetch_array

через 3-4 месяца приходи, задавай вопросы.

и не пытайся сопротивляться, все равно ты будешь читать эти книжки, лучше начни сейчас с их чтения ) не трать время ))) 2012 уже близок!1! %)
 

painbot

Ежик в тумане
iceman
вот как решу данный вопрос сразу и займусь а сейчас очень нужно решение)))
Спасибо Вам за помощь)
 
Сверху