УСЛОВИЕ: несколько городов, в каждом городе несколько магазинов, у каждого магазина своя выручка.
НЕОБХОДИМО: посчитать сумарную выручку по каждому городу в отдельности и вывести все города в обую диаграмму, где оси -прибыль в нутри столбца написать какой город. ну и каждый столбец покрасить в свой цвет.
кол-во точек и городов может рости.
как мыслю я. есть таблица sql tt_rez и в ней столбцы магазин - tt_id , выручка - res_rub , город - gorod
1) отсортировал по городу
2) перебираю
вот код
$resultdr = mysql_query("select * from tt_res ORDER BY gorod",$db);
$myrowdr = mysql_fetch_array($resultdr);
//echo $_SESSION['tit'];
do {
$g= $myrowdr['gorod'];
$g2=$myrowdr['gorod'];
$s= 0;
do {
if ($g==$g2)
{$s=$s+$myrowdr['res_rub'];}
next($tmyrowdr);
$g2=$myrowdr['gorod'];
}
while ($g=$g2);
echo '
<table width="'.$s.'px" height="1px" border="0" bgcolor="#3300CC" >
<tr>
<td>'?> <? echo $myrowdr["gorod"]?> <? echo'</td>
</tr>
</table>
';
}
while ($myrowdr = mysql_fetch_array($resultdr));
Спустя 2 минуты, 33 секунды (7.10.2010 - 16:35) arvitaly написал(а):
В чем вопрос то?
Спустя 40 секунд (7.10.2010 - 16:36) sergeiss написал(а):
Ты не поверишь... Смотреть даже тошно на этот код...
1. Организация цикла выборки - см. тут: http://phpforum.ru/index.php?showtopic=21916 и тут http://phpforum.ru/index.php?showtopic=32799
2. Запрос надо написать так, чтобы уже в нем находилась нужная сумма. А в ПХП только чтобы забирать готовый результат. Это будет проще намного.
1. Организация цикла выборки - см. тут: http://phpforum.ru/index.php?showtopic=21916 и тут http://phpforum.ru/index.php?showtopic=32799
2. Запрос надо написать так, чтобы уже в нем находилась нужная сумма. А в ПХП только чтобы забирать готовый результат. Это будет проще намного.
Спустя 18 минут, 9 секунд (7.10.2010 - 16:54) titovff написал(а):
УСЛОВИЕ: несколько городов, в каждом городе несколько магазинов, у каждого магазина своя выручка.
НЕОБХОДИМО: посчитать сумарную выручку по каждому городу в отдельности и вывести все города в обую диаграмму, где оси -прибыль в нутри столбца написать какой город. ну и каждый столбец покрасить в свой цвет.
кол-во точек и городов может рости.
можно более доступно, плиззззззз
НЕОБХОДИМО: посчитать сумарную выручку по каждому городу в отдельности и вывести все города в обую диаграмму, где оси -прибыль в нутри столбца написать какой город. ну и каждый столбец покрасить в свой цвет.
кол-во точек и городов может рости.
можно более доступно, плиззззззз
Спустя 16 часов, 10 минут, 21 секунда (8.10.2010 - 09:04) titovff написал(а):
ну кто нибудь!!! помогииииииииииите
Спустя 10 минут, 48 секунд (8.10.2010 - 09:15) sergeiss написал(а):
Цитата (titovff @ 8.10.2010 - 10:04) |
ну кто нибудь!!! помогииииииииииите |
А в чем помогать-то?
1. Ты так и не озвучил, в чем проблема, что не понятно. Хотя тебя прямо спросили об этом.
2. Ты ходил по указанным мной ссылкам, переделал код? В чем именно "затык" с кодом, в чем помогать?
Спустя 46 минут, 19 секунд (8.10.2010 - 10:01) titovff написал(а):
я ходил по ссылкам. там подключение к базе, запрос. это понятно.
я понимаю, что нужно делать цикл в цикле. 1-й цикл проверка по всем строчкам базы
и вложенный цикл сумирование выручки по магазинам в конкретном городе
как сделать, чтобы во вложенном цикле после каждого его прохода переходить на след. строчку?
я понимаю, что нужно делать цикл в цикле. 1-й цикл проверка по всем строчкам базы
do {
}
while ($myrowdr = mysql_fetch_array($resultdr));
и вложенный цикл сумирование выручки по магазинам в конкретном городе
do {
if ($g==$g2)
{$s=$s+$myrowdr['res_rub'];}
next($tmyrowdr);
$g2=$myrowdr['gorod'];
}
while ($g=$g2);
как сделать, чтобы во вложенном цикле после каждого его прохода переходить на след. строчку?
Спустя 52 секунды (8.10.2010 - 10:02) titovff написал(а):
next($tmyrowdr); - не работает
Спустя 26 минут, 47 секунд (8.10.2010 - 10:29) sergeiss написал(а):
Цитата (titovff @ 8.10.2010 - 11:01) |
я ходил по ссылкам. там подключение к базе, запрос. это понятно. |
Нифига ты не ходил. И нифига не понял, если даже и смотрел "по диагонали". Видно это по тому, что ты спрашиваешь, утверждая при этом, что сходил по ссылкам.
ГДЕ ТАМ цикл do-while при выборке данных из БД?
Еще раз сходи и ВНИМАТЕЛЬНО перечитай. Никто, в т.ч. я, не будем тебе тут пересказывать то, что уже специально было написано. На этом же форуме. Иди и читай.
Спустя 15 минут, 3 секунды (8.10.2010 - 10:44) titovff написал(а):
прошу быть ко мне более терпимым. я еще раз прочитал. просто цикл работает и с иоей конструкцией, а мне нужет цикл в цикле!
Спустя 5 минут, 40 секунд (8.10.2010 - 10:50) sergeiss написал(а):
Цитата (titovff @ 8.10.2010 - 11:44) |
прошу быть ко мне более терпимым |
По-моему, именно этим я и занимаюсь последние часа два
Цитата (titovff @ 8.10.2010 - 11:44) |
я еще раз прочитал. просто цикл работает и с иоей конструкцией, а мне нужет цикл в цикле! |
А ты не просто прочитай... А сделай, как там написано С использованием цикла while. Именно while, а не do-while. Покажи новый код, который получишь. Тогда и продолжим разговор.
И опять же... Если ты считаешь, что у тебя всё сделано правильно и ты не хочешь ничего переделывать - то зачем спрашиваешь-то?
Спустя 4 минуты, 50 секунд (8.10.2010 - 10:55) titovff написал(а):
буду переделывать.
Спустя 3 часа, 5 минут, 12 секунд (8.10.2010 - 14:00) titovff написал(а):
я упрямый . задачу свою решил вот так
дальше не обходимо
1) раскрасить в разные цвета, как то с помощью пошагового изменения цвета.
2)получается, что столбцы длинющие, нужно как то взять самый большой и принять его за 100 %, а остальные относительно него вычерчивать.
есть у кого идеи как решить эти задачи
$resultdr = mysql_query("select * from tt_res ORDER BY gorod",$db);
$myrowdr = mysql_fetch_array($resultdr);
//echo $_SESSION['tit'];
$g1=$myrowdr['gorod'];
$s= 0;
do {
$g2=$myrowdr['gorod'];
if ($g1==$g2)
{$s=$s+$myrowdr['res_rub'];}
else
{echo '
<table width="'.$s.'px" height="1px" border="0" bgcolor="#3300CC" >
<tr>
<td>'?> <? echo $g1?> <? echo'</td>
</tr>
</table>
';
$g1=$myrowdr['gorod'];
$s=$myrowdr['res_rub'];
}}
while ($myrowdr = mysql_fetch_array($resultdr));
дальше не обходимо
1) раскрасить в разные цвета, как то с помощью пошагового изменения цвета.
2)получается, что столбцы длинющие, нужно как то взять самый большой и принять его за 100 %, а остальные относительно него вычерчивать.
есть у кого идеи как решить эти задачи
Спустя 36 минут, 50 секунд (8.10.2010 - 14:37) sergeiss написал(а):
Тему закрываю, чтобы "поповщину" тут не распространял. Будут вопросы - создавай новую тему. Но только без "поповского" кода.