2010-07-26 1 views
0

Моя проблема кажется сложной для меня, но я уверен, что это простой способ сделать это.Эхо каждой категории со стола в свой собственный DIV

По существу, у меня есть список процедур. В таблице MYSQL элементы списка разбиты по категориям, типу, описанию и цене.

Мне нужно отбросить каждую категорию в div каждый, отделив их. Итак, если у пользователя есть 4 категории предметов, я должен иметь 4 divs со всеми элементами из каждой категории в каждом.

Я не могу позвонить в cataogory напрямую, потому что имена категорий - это то, что пользователь задает им.

Есть ли способ сделать это? Возможно, даже через некоторое время с PHP?


@Kaaviar имена столбцов таблицы в порядке - Категория, название, описание, цена

@sAc - Это основное, что им с помощью в данный момент, но это просто перечисляет все в порядке Категория.

<?php 

    include 'config.php'; 

    $treatments = MySQL_query("SELECT * FROM treatments ORDER BY category") or die (MySQL_error('woops')); 

    while($list = MySQL_fetch_array($treatments)) { 

    echo $list['title']; 
    echo $list['description']; 
    echo $list['price']; 


    } 

    ?> 

@Luke - Ваш код не возвращает ничего здесь на моем конце, необходимые правки и т.д.

Спасибо, Уоррен

+0

Вы также должны представлять свой код. – Sarfraz

+0

И ваши столбцы таблицы :) –

+0

Я думаю, что проблема с кодом Люка заключается в том, что он указывает на $ row ['category'], а в вашем выборе вы имеете «ORDER BY catagory». Вы можете либо заменить «категорию» в своем коде «catagory», либо переименовать столбец в своей таблице в «category», что является правильным способом его написания. catagory! = Category – Rudisimo

ответ

1

Вы можете попробовать ниже, очевидно, вы не должны использовать разметка, которую я сделал demo'ed.

$string = '<div><ul>'; 
$cat = ''; 
while ($row = mysql_fetch_assoc($result)) { 
    if ($row['category'] != $cat && !empty($cat)) { 
    $string .= '</ul></div><div><ul>'; 
    } 
    $string .= '<li>' . $row['title'] . '</li>'; 
    $cat = $row['category']; 
} 
$string .= '</ul></div>'; 

Надеется, что это помогает

Люка

Смежные вопросы