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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Подключение нескольких страниц с разным функционалом к одному шаблону

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
freelsd
Отправлено: 27 Ноября, 2015 - 11:19:10
Post Id


Гость


Покинул форум
Сообщений всего: 108
Дата рег-ции: Февр. 2015  


Помог: 1 раз(а)




Есть некий шаблон страницы, и чтобы подключить рабочую страницу, раньше использовалась конструкции типа:

PHP:
скопировать код в буфер обмена
  1. $page = $_GET['page]
  2. include("inc/".$page.".php");


Но как вообще правильно подключать основную часть страницы? С точки зрения безопасности и функциональности. Спасибо.
 
 Top
lastdays
Отправлено: 28 Ноября, 2015 - 00:15:08
Post Id



Частый гость


Покинул форум
Сообщений всего: 221
Дата рег-ции: Март 2013  


Помог: 7 раз(а)




Если страницы постоянно не изменяются, то любым удобным способом.

Можно так
PHP:
скопировать код в буфер обмена
  1.  
  2. $file = isset($_GET["file"]) ? $_GET["file"] : 'index';
  3.  
  4. if ( file_exists($_SERVER["DOCUMENT_ROOT"].'/'.$file.'.php') )
  5. {
  6.         include($_SERVER["DOCUMENT_ROOT"].'/'.$file.'.php');
  7. }
  8.  
  9.  


Или так
PHP:
скопировать код в буфер обмена
  1.  
  2. if ( isset( $_GET["file"] ) )
  3. {
  4. switch ( $_GET["file"] )
  5. {
  6.   case 'page1' :
  7.      include($_SERVER["DOCUMENT_ROOT"].'/page1.php');
  8.   break;
  9.  
  10.   case 'page2':
  11.      include($_SERVER["DOCUMENT_ROOT"].'/page2.php');
  12.   break;
  13.  
  14.   default:
  15.     include($_SERVER["DOCUMENT_ROOT"].'/index.php');
  16.   break;       
  17. }
  18.  
  19. }
  20.  

Либо доступные страницы в массив
PHP:
скопировать код в буфер обмена
  1.  
  2. $file_array = array('page1', 'page2', 'index');
  3. if ( in_array ($_GET["file"], $file_array) )
  4. {
  5.         include($_SERVER["DOCUMENT_ROOT"].'/'.$file_array[$_GET["file"]].'.php');
  6. }
  7.  
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB