Хотелось бы узнать, как можно одним простым запросом сделать поле выбора с категориями и подкатегориями с optgroup.
Категория таблицы:
cat_id int(10) unsigned Auto Increment
cat_catid int(10) unsigned NULL
cat_name varchar(100)
Содержимое:
| cat_id | cat_catid | cat_name |
+--------+-----------+----------------
| 1 | NULL | Category - A |
| 2 | 1 | 1 |
| 3 | 1 | 2 |
| 4 | NULL | Category - B |
| 5 | 4 | 1 |
| 6 | 4 | 2 |
| 7 | 4 | 3 |
С одним запросом и PHP превращаем его в:
<select>
<optgroup label="Area - A">
<option>1</option>
<option>2</option>
</optgroup>
<optgroup label="Area - B">
<option>1</option>
<option>2</option>
<option>3</option>
</optgroup>
</select>