Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как реализовать каталог статей неограниченной вложённости
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Как реализовать каталог статей неограниченной вложённости

Страниц (1): [1]
 

1. lego - 24 Ноября, 2010 - 22:54:43 - перейти к сообщению
Здравствуйте! Суть дела такова. В корневой папке сервера есть папка ARTIKLES (основная директория). В этой папке может быть сколько угодно поддиректорий и файлов (текстовых - содержание статей), а в каждой поддиректории в свою очередь опять же сколь угодно поддиректорий и файлов и т.д.
В корневой папке есть файл index.php, который и должен выводить. Для двух уровней вложённости моему мозгу нетрудно было потрудиться:

PHP:
скопировать код в буфер обмена
  1. $page=$_REQUEST['page'];
  2. $dir=$_REQUEST['dir'];
  3. if (empty($page) || empty($dir)) {$file='articles/main.txt';}
  4. if (!empty($page) || empty($dir)) {$file='articles/'.$page.'.txt';}
  5. if (empty($page) || !empty($dir)) {$file='articles/'.$dir.'/main.txt';}
  6. if (!empty($page) || !empty($dir)) {$file='articles/'.$dir.'/'.$page.'.txt';}
  7.  
  8. //далее идёт открытие соответсвующего файла и его чтение


Я так понимаю, здесь должно быть что-то рекурсии... Подскажите, пожалуйста))

П.С. выводиться должно так:
site.ru/index.php?dir=history&page=smuta1612
А в итоге планируется сделать ЧПУ вида site.ru/history/smuta1612.html

А так как ещё хочется и неограниченную вложённость, на деле может получиться и site.ru/history/romanovi/smuta/1 612/pozharsky.html

Как-то так...
2. OrmaJever - 25 Ноября, 2010 - 00:31:28 - перейти к сообщению
А в чём суть вопроса? На мой взгляд всё должно работать Однако
3. lego - 25 Ноября, 2010 - 21:10:52 - перейти к сообщению
то есть так? site.ru/index.php?dir=history/romanovi/smuta/1612/&page=pozharsky
4. ALEN - 25 Ноября, 2010 - 21:12:43 - перейти к сообщению
Ну естественно рекурсию делать через функцию и все, так можно сколько хочешь вложенностей делать.
5. OrmaJever - 25 Ноября, 2010 - 21:20:02 - перейти к сообщению
lego пишет:
то есть так? site.ru/index.php?dir=history/romanovi/smuta/1612/&page=pozharsky
ну да. А что не работает?

 

Powered by ExBB FM 1.0 RC1