Есть 10 страниц, каждая страница тянет дизайн из шаблона, который лежит в 3-х документах:
[*]header.php
[*]content.php
[*]footer.php
У каждой страницы свой контент, который вытягивается из соответствующего странице файла .txt. Для того, что бы не ваять кучу отдельных страниц в которые подгружался бы контент последствием
$text = file_get_contents('file.txt');
echo $text;
Я построил внутри content.php ассоциативный массив:
<?php
//Строим ассоциативный массив, в котором определяем переменные // и файл который они подключают
$content["$findaplan"]="findaplan.txt";
$content["$store"]="store.txt";
$content["$bodyspace"]="bodyspace.txt";
$content["$supersite"]="supersite.txt";
$content["$forum"]="";
$content["$contactus"]="contactus.txt";
$content["$needahelp"]="needahelp.txt";
$content["$viewcard"]="viewcard.txt";
?>
Как же определить, на какую страницу, что вытягивать? :blink:
Спустя 5 минут, 45 секунд (28.12.2011 - 14:26) Winston написал(а):
Ну типа такого
В $_GET['page'] у тебя будет имя страницы.И соответственно в зависимости от того какой адрес в строке, будет отображаться та или иная информация.
$content["findaplan"]="findaplan.txt";
$content["store"]="store.txt";
$content["bodyspace"]="bodyspace.txt";
// .........
echo file_get_contents($content[$_GET['page']]);
В $_GET['page'] у тебя будет имя страницы.И соответственно в зависимости от того какой адрес в строке, будет отображаться та или иная информация.
Спустя 3 минуты, 8 секунд (28.12.2011 - 14:29) NitroGenerate написал(а):
У Вас наверное каждая страница имеет свой номер, допустим это id, который передается через GET
Делайте привязку
if($_GET['p']==1) { //
// Если наша страница первая то... делаем что нам нужно
}
Или другой вариант, при создании массива добавить туда переменную страницы(на которой будет выводится какое -то содержание), а затем на каждой странице искать совпадение, если есть совпадение текущей страницы и какогото элемента массива, то выводим.
Делайте привязку
if($_GET['p']==1) { //
// Если наша страница первая то... делаем что нам нужно
}
Или другой вариант, при создании массива добавить туда переменную страницы(на которой будет выводится какое -то содержание), а затем на каждой странице искать совпадение, если есть совпадение текущей страницы и какогото элемента массива, то выводим.
Спустя 7 минут, 44 секунды (28.12.2011 - 14:37) mid написал(а):
<?php
$content["findaplan"]="findaplan.txt";
$content["store"]="store.txt";
$content["bodyspace"]="bodyspace.txt";
$content["supersite"]="supersite.txt";
$content["forum"]="";
$content["contactus"]="contactus.txt";
$content["needahelp"]="needahelp.txt";
$content["viewcard"]="viewcard.txt";
$index = file_get_contents($content[$_GET['index']]);
echo $index;
?>
ссылки будут получаться так к примеру:
http://mysite.ru/index.php?index=store
И будут выводиться данные store.txt
http://mysite.ru/index.php?index=needahelp
И будут выводиться данные needahelp.txt
можно с помощью APACHE сделать симпатичнее.
Создать файл с однем только расширением
.htaccess
с содержимым
RewriteEngine on
RewriteRule ^_(.*)$ /index.php?index=$1
и тогда ссылки будут
http://mysite.ru/store
http://mysite.ru/needahelp
Спустя 15 минут, 32 секунды (28.12.2011 - 14:52) Avond написал(а):
Цитата (mid @ 28.12.2011 - 11:37) |
$index = file_get_contents($content[$_GET['index']]); echo $index; ?> [/php] ссылки будут получаться так к примеру: http://mysite.ru/index.php?index=store И будут выводиться данные store.txt http://mysite.ru/index.php?index=needahelp И будут выводиться данные needahelp.txt можно с помощью APACHE сделать симпатичнее. Создать файл с однем только расширением .htaccess с содержимым RewriteEngine on и тогда ссылки будут http://mysite.ru/store http://mysite.ru/needahelp |
Разложи пожалуйста все по полочкам, кто, что проверяет, и что писать вместо index?
Спустя 29 минут, 46 секунд (28.12.2011 - 15:22) mid написал(а):
<?php
$content["findaplan"]="findaplan.txt";
$content["store"]="store.txt";
$content["bodyspace"]="bodyspace.txt";
$content["supersite"]="supersite.txt";
$content["forum"]="";
$content["contactus"]="contactus.txt";
$content["needahelp"]="needahelp.txt";
$content["viewcard"]="viewcard.txt";
$index = file_get_contents($content[$_GET['index']]);
echo $index;
?>
Разберемся.
file_get_contents($content[$_GET['index']]); разберем эту строку,думаю станет понятнее.
$_GET['index'] - это суперглобальный массив.Идет работа с url !
вот ссылка к примеру ....ru/index.php?index=1234
GET выведет 1234!и если есть $content["1234"] он выведет,а если нет выдаст ошибку.Нужно ещё будет к этому коду проверку писать!
file_get_contents() - эта функция тебе знакома.
И так вот,что бы не делать ссылку такой длинной .ru/index.php?index=1234
её можно укоратить до .ru/1234 с помощью apache.Файл apache не должен иметь имени вообще!только расширение,а расширение у него .htaccess
В этот файл нужно запихать код,который сократит url.Я его уже присылал.Вроде верный!
$content["findaplan"]="findaplan.txt";
$content["store"]="store.txt";
$content["bodyspace"]="bodyspace.txt";
$content["supersite"]="supersite.txt";
$content["forum"]="";
$content["contactus"]="contactus.txt";
$content["needahelp"]="needahelp.txt";
$content["viewcard"]="viewcard.txt";
$index = file_get_contents($content[$_GET['index']]);
echo $index;
?>
Разберемся.
file_get_contents($content[$_GET['index']]); разберем эту строку,думаю станет понятнее.
$_GET['index'] - это суперглобальный массив.Идет работа с url !
вот ссылка к примеру ....ru/index.php?index=1234
GET выведет 1234!и если есть $content["1234"] он выведет,а если нет выдаст ошибку.Нужно ещё будет к этому коду проверку писать!
file_get_contents() - эта функция тебе знакома.
И так вот,что бы не делать ссылку такой длинной .ru/index.php?index=1234
её можно укоратить до .ru/1234 с помощью apache.Файл apache не должен иметь имени вообще!только расширение,а расширение у него .htaccess
В этот файл нужно запихать код,который сократит url.Я его уже присылал.Вроде верный!
Спустя 3 минуты, 2 секунды (28.12.2011 - 15:25) mid написал(а):
Могу тебе сделать проверку и т.д.
Но это уже не за спс,сам понимаешь!
Но это уже не за спс,сам понимаешь!
Спустя 24 минуты, 21 секунда (28.12.2011 - 15:49) mid написал(а):
Тебе может пригодиться этот скриптик!
Спустя 27 минут, 41 секунда (28.12.2011 - 16:17) NitroGenerate написал(а):
mid Вы человека сбиваете с пути истинного и сильно усложняете ему жизнь, он новичок, какой ему htaccess, ему главное что бы все работало и будет он счастлив, а как выглядеть будет, это все неважно.
Спустя 18 минут, 29 секунд (28.12.2011 - 16:36) NitroGenerate написал(а):
<?php
$arr = array(1 => "findaplan.txt", 2 => "store.txt", 3 => "bodyspace.txt", 4 => "supersite.txt", 5 => "", 6 => "contactus.txt", 7 => "needahelp.txt", 8 => "viewcard.txt" );
/* Перенес спасок ваших файлов в пронумерованный массив, для удобства управления */
if(ctype_digit(@$_GET['index'])&& @$_GET['index']>0){ // Делаем проверку, если переменная в GET запросе (index) является числом и больше нуля
$page=$_GET['index']; // создаем переменную $page в которой будем записывать номер страницы
}
else // если $_GET['index'] не является числом, либо равен нулю, либо его нет совсем
{
$page=1; // то страница по умолчанию первая
}
$index = file_get_contents($arr[$page]); /* $arr - наш массив; $page - текущая составленная нами страница; (допустим если страница 2, то будет
$index = file_get_contents("store.txt") тут получаем содержимое этого файла и запихиваем в переменную index
*/
echo $index; // выводим ее на экран
?>
Постарался максимально подробно все изложить
Забыл, все это положите в файл, допустим, index.php
Если вам нужна вторая страница то обращайтесь к ней как
index.php?index=2
и тд
Спустя 3 часа, 46 минут, 34 секунды (28.12.2011 - 20:22) mid написал(а):
NitroGenerate,да что-то в самом деле:)
Загрузил напрасно:)
Загрузил напрасно:)
_____________
Люди, как люди. Спят, едят, пьют, занимаются любовью. А я пишу код=)[COLOR=green][SIZE=1]