2013-03-16 2 views
1

У меня есть таблица MySQL со значениями, содержащими судей для соревнований по спорту. Компоновка пример:Использование значений таблицы MySQL в качестве заголовков

Table name = competition 

panel | name | role 
Grade 1 | Bob | Judge 1 
Grade 1 | Dave | Judge 2 
Grade 2 | Jo | Judge 1 
Grade 1 | Kat | Judge 3 

Я хотел бы показать это в HTML в следующем формате:

-- Grade 1 -- 
Judge 1 | Bob 
Judge 2 | Dave 
Judge 3 | Kat 
-- Grade 2 -- 
Judge 1 | Jo 

Название панели является переменным и изменением между конкуренцией, поэтому их использования в коде не вариант , Моя попытка (которая не работает):

<?php $panels_distinct = mysql_query("SELECT DISTINCT panel FROM competition"); ?> 

    <table> 

<?php while $panel_names = mysql_fetch_array($panels_distinct) { ?> 

    <tr> 
     <td colspan="2"><?php echo $panel_names['panel'] ; ?></td> 
    </tr> 

    <?php $judges = mysql_query("SELECT * FROM competition WHERE panel = $panel_names['panel'] ") ; 
    while $judges_info=mysql_fetch_array($judges) { ?> 

     <tr> 
     <td><?php echo $judges_info['role'] ; ?></td> 
     <td><?php echo $judges_info['name'] ; ?></td> 
     </tr> 

    <?php } // end while $judges_info ?> 

<?php } // end while $panel_names ?> 

    </table> 

В настоящее время выводятся только имена панелей. Любая помощь или предложения с благодарностью получили!

ответ

0

Удалить DISTINCT с sql. Также вы хотите получить ORDER BY grade после имени таблицы.

Чтобы получить форматирование, которое вы показали, вам необходимо определить, когда изменения в классе будут изменены, а затем распечатать строку заголовка.

+0

Большое спасибо! Проблема решена сейчас. Ура! – adswayne

0

Одна проблема заключается в том, что вы должны поставить одиночные кавычки вокруг значения вы сравниваете:

panel = '$panel_names['panel']' "); 

Другая проблема заключается в том, что PHP не любит разборе ключей массива, которые имеют кавычки вокруг них, когда они встроены в строках , Вы можете окружить массив в {}:

panel = '{$panel_names['panel']}' "); 
Смежные вопросы