Как быть с выводом из БД.

  • Автор темы olegking
  • Дата начала

olegking

Guest
Как быть с выводом из БД.

Постарался объяснить емко и понятно, надеюсь получилось.
Вообщем такая ситуация:
Такая вот структура: Есть список разделов, и в них есть ячейка в которой указывается id её подразделов(напрмер, 4:::8:::9, то есть 4,8 и 9-ые строки таблицы это подразделы этого раздела),ну вот, вообщем как я делал без Смарти, я брал explode'м вытаскивал 4,8,9 и запрашивал инфу о подразделах. А как быть со смарти?
Такой вот код:
<?
$sql_list_cat = mysql_query("SELECT id,name,type,sub FROM xtex_category ORDER BY num ASC");
while ($sql_list_cata= mysql_fetch_array($sql_list_cat))$aData[] = $sql_list_cata;
$smarty->assign("aData",$aData);
$smarty->display('admin/create_list_category.tpl');
?>

<center>
<table border="1" cellpadding="5" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td align=center bgColor=#b3ceec><B>Имя</B></td>
<td align=center bgColor=#b3ceec><B>Действие</B></td>
</tr>
<{foreach item=cata from=$aData}>
<form action="create_category.php" method="post">
<tr>
<td><{$cata.name}>
<{if $cata.type=='2'}>
//Что тут писать ???
<{/if}>

</td>
<td><input type="submit" name=create_sub value="Создать подраздел"></td>
</tr>
</form>
<{/foreach}>
</table>
</center> __________________
Буду благодарен, если вы укажите пример.
 

Crys

Двинутый новичок
PHP:
//php

while ($sql_list_cata= mysql_fetch_array($sql_list_cat))
{
$sql_list_cata["sub"]=explode(":::",$sql_list_cata["sub"]);
$aData[] = $sql_list_cata;
}

//smarty
<{if $cata.type=='2'}>
<{$cata.sub.0}> etc...
<{/if}>
Типа такого не пойдет?
 

olegking

Guest
В том та вся и сложность, ну допустим ты из PHP вынешь номера строк подразделов, а толку? Ну пошлешь в смарти ты их, но они то должны выстраиваться не в хаотичном порядке, а строго четко, то есть, под разделом идет его подразделы.
Антивирусы
- Каспер
- Нортон
- етц
 

Мутник

Новичок
olegking

надо, наверное, в смарти правильный порядок передавать... сначала рекурсивно подумать в пхп и отправить в шаблон...
 

vafel

Новичок
лучше наверное деревья соорудить тогда проблем таких не будет(зато с сортировакой прибавятся)
 

Buteo

[CDR/DVP]
olegking
никаких sub НЕ должно быть...
прально делать так: { id, parent, name... } где парент - id раздела стоящего выше...
 

olegking

Guest
Автор оригинала: Мутник
olegking

надо, наверное, в смарти правильный порядок передавать... сначала рекурсивно подумать в пхп и отправить в шаблон...
Я тоже так подумал, что лучше в ПХП составить как это будет выглядить, а в смарти сразу это выводить, но это будет не оптимально, т.к. в ПХП с кодом будет много гемора, вот ищу более оптимальный выход.

2vafel:
Че то не понел, раскрой плз мысль.

2Buteo:
Ты вроде говоришь уверенно, но я не понел вообще твою мысль.

У меня структура такая: Если тип==1, то это раздел и надо выводить его. А если тип==2, то не че не делать с ним до времени. А потом уже в строке самого раздела смотрю, какие строки таблицы являются его подразделами.
 
Сверху