Как включить страницу с функцией $ _GET & htaccess?

В настоящее время разрабатывается веб-сайт, и мне интересно, как включить страницы в основной индекс (только для изменения содержимого определенной области, а не всей страницы) с помощью функции $ _Get.

Файлы будут такими, как index.php (включая контентные страницы), news.php (отображение по умолчанию по индексу), members.php, about.php, guide.php, downloads.php, sponsors.php и т. Д.

Я верю (если я правильно помню), связанная с методом $ _Get, обычно выглядит примерно так: index.php? Pid = about

Я также хотел бы узнать, как я могу изменить ссылку (через htaccess?) Для ссылки следующим образом: www.mywebsite.com/about/ вместо mywebsite.com/index.php?pid=about

Прошло некоторое время с тех пор, как я сделал какой-либо PHP и не помню, как это делается в точности.

Предварительный просмотр того, над чем я работаю, можно найти на сайте www.survivaloperations.net/dev/

Вы поместили бы все свои файлы в папку с папками, а только в файлы с расширением .php.

ваш index.php будет выглядеть так:

 include('pages/'. $_GET['pid']. '.php'); 

И поэтому ваши файлы будут выглядеть так:

 pages/home.php pages/contact.php 

и вы бы пошли:

 index.php?pid=home index.php?pid=contact 

соответственно

Вы также хотели бы иметь контроль над значениями $ _GET. Я рекомендую использовать php-переключатель:

  switch($_GET['pid']) { case "home": include("home.php"); break; case "contact": include("contact.php"); break; case "thing": include("thing.php"); break; default: include("404.php"); break; } 

Коммутатор требует меньше кода, чем команды else else, и позволяет отображать страницу типа «404» по умолчанию, когда вводится недействительный pid. Это также защищает пользователей от доступа к чему-либо, что им не нужно … например, «../db.php» или что-то (не уверен, что возможен доступ к родительскому каталогу, но все же).

перед использованием $ _GET вы должны очистить теги для обеспечения безопасности.

 $pid = strip_tags($_GET['pid']); include("$path/" . $pid . ".php"); 

но … я предпочитаю другой код для безопасности.

 $pid = strip_tags($_GET['pid']); switch($pid) { 'sub01' : include("$path/01.php"); break; 'sub02' : include("$path/02.php"); break; default : include("$path/main.php"); }