В базе есть записи с валютами, и у каждой валюты своя категория. Валюта и категория в одной таблице.
Структура:
где - code и есть категория.
В таблице записи в таком виде
Вывожу все так:
$sql = mysql_query("SELECT * FROM `valuta` ORDER BY `id` ASC");
while ($item= mysql_fetch_assoc($sql)) {
?>
<option><?=$item['name'];?></option>
<?
}
Хочу получить вот такую разметку:
<optgroup label="RUB">
//option
</optgroup>
<optgroup label="USD">
//option
</optgroup>
<optgroup label="BTC">
//option
</optgroup>
Буду благодарен за помощь.
Учитывая вашу задачу, мне кажется будет правильнее сгруппировать массив данных и им уже оперировать в дальнейшем.
$myArray = [];
while ($item= mysql_fetch_assoc($sql)) {
$myArray[$item['code']][] = $item;
}
foreach ($myArray as &key => $value): ?>
<optgroup label="<?= $key; ?>">
<? foreach($value as $v): ?>
<option value="<?= $v['name']; ?>">
<?= $v['name']; ?>
</option>
<? endforeach; ?>
</optgroup>
<? endforeach;
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости