PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (91): В начало « ... 66 67 68 69 [70] 71 72 73 74 ... » В конец
Найдено сообщений: 1361
Саныч
Отправлено: 28 Апреля, 2011 - 23:15:22 • Тема: Группировка подкатегорий к с категориями • Форум: SQL и Архитектура БД
Ответов: 12 Просмотров: 145
dropoff пишет: получается 27 запросов.
а сразу это было не понятно?)
Не хочется запросов, вытаскивайте одним запросом все, прогоняйте через циклы, кароче занимайтесь фигней...
недавно была похожая задача, писал менюху с подкатегориями. Организовал так, сначало выводил на страницу только "верхние" категории и те, у которых есть потомки ставил определенный ид. При клике на такую категорию, я аяксом подгружаю ее потомков, и открываю... И так далее... Возможно такой вариант будет наиболее удачным?
Саныч
Отправлено: 27 Апреля, 2011 - 17:44:18 • Тема: Группировка подкатегорий к с категориями • Форум: SQL и Архитектура БД
Ответов: 12 Просмотров: 145
ну коли так, попробуй еще так сделать
PHP:
скопировать код в буфер обмена
add_hook( 'main' , 'category' ) ;
$category_array = array ( ) ; function c( $id = 0, $level = 0)
{
global $category_array ;
$sql = mysql_query ( 'SELECT id, url, title, text, status, img, sort, parent_id FROM category WHERE status = 1 AND parent_id=' . $id ) ; {
for ( $n = 0, $pre = '' ; $n < $level ; $n ++ ) $pre .= '---' ;
$category_array [ ] = array ( 'ID' => $res [ 'id' ] ,
'URL' => $res [ 'url' ] ,
'TITLE' => ( $pre . $res [ 'title' ] ) ,
'TEXT' => $res [ 'text' ] ,
'STATUS' => $res [ 'status' ] ,
'IMG' => $res [ 'img' ] ,
'SORT' => $res [ 'sort' ] ,
'PARENT_ID' => $res [ 'parent_id' ]
) ;
c( $res [ 'id' ] , $level + 1) ;
}
}
function category( $id = 0, $level = 0)
{
global $smarty , $category_array ;
с( ) ;
$smarty -> assign ( 'category' , $category_array ) ;
$category_content = $smarty -> fetch ( BLOCKS. 'category/theme/category.tpl' ) ;
$smarty -> assign ( 'CATEGORY' , $category_content ) ;
}
Саныч
Отправлено: 27 Апреля, 2011 - 12:36:17 • Тема: Группировка подкатегорий к с категориями • Форум: SQL и Архитектура БД
Ответов: 12 Просмотров: 145
dropoff пишет: Только parent_id='.$id в моем случае.
да, немного ошибся... И еще забыл написать, в моем коде parent_id у категорий, которые не имеют родителя (т.е. у самых "верхних") должно быть 0
dropoff пишет: Не могу что-то сообразить как сунуть теперь в шаблон это все.
возможно так
PHP:
скопировать код в буфер обмена
$category_array = array ( ) ; function c( $id = 0, $level = 0)
{
global $category_array ;
$sql = mysql_query ( 'SELECT id, url, title, text, status, img, sort, parent_id FROM category WHERE status = 1 AND parent_id=' . $id ) ; {
for ( $n = 0, $pre = '' ; $n < $level ; $n ++ ) $pre .= '---' ;
$category_array [ ] = array ( 'ID' => $res [ 'id' ] ,
'URL' => $res [ 'url' ] ,
'TITLE' => ( $pre . $res [ 'title' ] ) ,
'TEXT' => $res [ 'text' ] ,
'STATUS' => $res [ 'status' ] ,
'IMG' => $res [ 'img' ] ,
'SORT' => $res [ 'sort' ] ,
'PARENT_ID' => $res [ 'parent_id' ]
) ;
c( $res [ 'id' ] , $level + 1) ;
}
}
c( ) ;
$smarty -> assign ( 'category' , $category_array ) ;
$category_content = $smarty -> fetch ( BLOCKS. 'category/theme/category.tpl' ) ;
$smarty -> assign ( 'CATEGORY' , $category_content ) ;
Саныч
Отправлено: 27 Апреля, 2011 - 08:08:18 • Тема: Группировка подкатегорий к с категориями • Форум: SQL и Архитектура БД
Ответов: 12 Просмотров: 145
вывод всех категорий и подкатегорий... вобщем выводим все...
PHP:
скопировать код в буфер обмена
function c( $id = 0, $level = 0)
{
$sql = mysql_query ( 'SELECT id,title FROM category WHERE id=' . $id ) ; {
for ( $n = 0 ; $n < $level ; $n ++ ) echo '---' ;
echo $res [ 'title' ] ;
c( $res [ 'id' ] , $level + 1) ;
}
}
c( ) ;
Как основу можете использовать это, но а там уже подгоняйте по свои нужды. Если что не понятно, спрашивайте.
Саныч
Отправлено: 26 Апреля, 2011 - 21:48:05 • Тема: Помогите разобраться плиз! • Форум: HTML, Дизайн & CSS
Ответов: 10 Просмотров: 2504
по спецификации HTML значения атрибутов должны быть заключены в кавычки (" или '). Я лично использую двойную кавычку.
з.ы. а вот это лучше не прописывать width=100% border=0 cellspacing=0 cellpadding=0. Меньше html, больше css
Страниц (91): В начало « ... 66 67 68 69 [70] 71 72 73 74 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB