Reply to Re: help with query and presentation...

Your name:

Reply:


Posted by Frank on 12/06/05 05:27

On Mon, 5 Dec 2005 12:16:47 +0100, "Hilarion"
<hilarion@SPAM.op.SMIECI.pl> wrote:

>>>>I have a mySql db table with the following structure:
>>>>
>>>>main_category| category| sub_category| answer|date
>>>>
>>>>Basically, the data will be along these lines:
>>>>Neuro | LOC | Status | answer1|date
>>>>Neuro | LOC | Status | answer2|date
>>>>Neuro | LOC | Status | answer3|date
>>>>Senso| Visi | Clarity | answer1|date
>>>>Senso| Visi | Clarity | answer2|date
>>>>etc...
>>>>I am trying to query the db and create labels in order to present the
>>>>user with the data in the following structure:
>>>>
>>>>Main Category
>>>> Category
>>>> Sub Category
>>>> answer1
>>>> answer2
>>>> answer3
>>>> ...
>>>>
>>>>Main Category
>>>> Category
>>>> Etc...
>>>>
>>>>I could really use some help on a query to group the data in this way!
>>>>
>>>>Thanks in advance!!!
>>>>
>>>>
>>>>Frank
>>>
>>>You could run multiple queries to do group by's or you can run one
>>>query and be creative.
>>>
>>>$ctgy = '';
>>>$sctgy = '';
>>>$qy = "SELECT * FROM table order by main_category, category";
>>>$rs = mysql_query ($qy) or die (mysql_error());
>>>while ($r = mysql_fetch_array ($rs)) {
>>> if ($ctgy != $r['main_category']) {
>>> $ctgy = $r['main_category'];
>>> echo "<div style='padding-left:10px;">$ctgy</div>";
>>> }
>>> // do the same thing for the sctgy with padding-left:20px;
>>> // then display your answers
>>> echo "<div style='padding-left:30px;'>{$r['answer1']}</div>";
>>> //etc.
>>> }
>>>
>>>Warning: this code has not been tested for errors. ;-)
>>
>> Tyrone,
>>
>> Thanks very much for the help, but I am not quite sure that I
>> understand. in the if ($ctgy!=..) statement, what I am testing
>> against? I don't see where $ctgy is ever set to anything but an emptly
>> string.
>
>
>It's set to empty string at first, but then it's set to $r['main_category'].
>The solution given works like this:
>If the current "main_category" differs from the previous one ($ctgy),
>then output it's name and store it as $ctgy for future comparisons.
>The algorithm will fail if there are categories with empty names
>(it will not output it's <div> if that category comes first from
>the query).
>
>Hilarion

Thank you both very much for the help. It Works like a Charm!!!
Thanks again,

Frank

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация