Много страниц сайта в 1 файле php

vasiliy_shkolniy
На сайте с 09.11.2008
Offline
128
960

Есть несколько страниц, практически идентичных, разные картинки, описания.. Раньше вставлял повторяющиеся куски кода при помощи include, но здесь хотелось бы сделать 1 файл, (типа с _id1, 2, 3..) чтобы только подставлялись в нужных местах разные картинки и т.п.

Не шарю в пхп, может кто знает где почитать чисто о такой реализации, без описания всех возможностей пхп))

LEOnidUKG
На сайте с 25.11.2006
Offline
1772
#1

Используйте функции function и вызывайте их.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
WF
На сайте с 18.01.2016
Offline
6
#2

геморно это будет для вас если с php не очень дружите, хотя здесь не очень и сложно все.

вам прийдется передавать дополнительные параметры в ссылке.

типа такого http://вашсайт.рф/index.php?product=potato или http://вашсайт.рф/index.php?product=tomat

а сам файл будет таким


$product = trim($_GET['product']); // здесь квадратные скобки вместо звездочек числами

if ($product == 'potato') {
// показываем контент для картошки
}
elseif ($product == 'tomat') {
// показываем контент для томатов
}

Просто вставляем условие в нужное место верстки и передаем параметр через сылку, и в нужном месте появится соответствующий текст или картинка

Лендинги всего за 4500р (/ru/forum/923704)
totamon
На сайте с 12.05.2007
Offline
437
#3
webFil:
здесь*квадратные*скобки*вместо*звездочек*числами

используйте кнопку [#] CODE для выделения кода...

по теме, пора переходить на CMS... или изучать PHP

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
M
На сайте с 04.12.2013
Offline
223
#4

vasiliy_shkolniy, про единую точку входа я здесь недавно писал. Рядом можно попросить потестировать описанный скрипт. В дистре там обычно не один файл, но есть возможность все собрать в один, если не будете использовать расширенные возможности вроде вложенных шаблонов и т.п. Судя по вашему описанию, можно ограничиться использованием общего шаблона, который можно разместить в конце файла скрипта (возможно, общий шаблон уже там будет, просто это меняется от версии к версии, поэтому точно сказать не могу). Только учтите, что скрипт не на файлах, на БД.

Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
CP
На сайте с 12.08.2009
Offline
101
#5
vasiliy_shkolniy:
Есть несколько страниц, практически идентичных, разные картинки, описания.. Раньше вставлял повторяющиеся куски кода при помощи include, но здесь хотелось бы сделать 1 файл, (типа с _id1, 2, 3..) чтобы только подставлялись в нужных местах разные картинки и т.п.
Не шарю в пхп, может кто знает где почитать чисто о такой реализации, без описания всех возможностей пхп))

Не мучайтесь, залейту в базу Mysql, поставьте фрамеворк, код страницы вашей выйдет в 5 строчек. и одной директивой для роута. Еще крутым плюсом phpmyadmin будет у вас как админка)))

Профессиональный frontend: JS, html,css, Single-Page App (/ru/forum/964386)
donc
На сайте с 16.01.2007
Offline
686
#6
vasiliy_shkolniy:
хотелось бы сделать 1 файл

Этак вы и ЦМС свою напишете, они все в принципе так и устроены - один индексный файл и куча вспомогательных + база

По степени трудозарат по наполнению - что 3 файла с include, что 1 файл с тремя параметрами равноценны.

Но файлы с include проще и интуитивно понятнее. И уязвимость с ними на порядок меньше. А то в этих доп параметрах и кроется дьявол.

Продвижение сайтов от 25 000 в мес, прозрачно, надежно https://searchengines.guru/ru/forum/818412 , но не быстро, отзывы
M
На сайте с 04.12.2013
Offline
223
#7
Content-pro:
Не мучайтесь, залейту в базу Mysql, поставьте фрамеворк, код страницы вашей выйдет в 5 строчек. и одной директивой для роута. Еще крутым плюсом phpmyadmin будет у вас как админка)))

Да, phpmyadmin офигенно удобен, как админка 🤪 Хотя на первых порах сойдет и он, если нет альтернативы.

vasiliy_shkolniy
На сайте с 09.11.2008
Offline
128
#8

Спасибо. Подскажите ещё пожалуйста

Надо, чтобы в подключаемой странице выводились данные в зависимости от значения $name в основном файле, или свой текст, если её не существует.

Основной файл

<?
function Title()
{
$GLOBALS[title'] = $name;
}
?>
// тут первая проблема, т.к. на подключаемой странице не выводится значение $name,
может из-за того, что она глобальная?

Подключаемая страница

<?
Title();
if (empty($title)) {
echo 'ничего'
;}
else {
echo $title
;}

?>
// это выдаёт ошибку, пытался сделать чтобы $title выводился только если
он существует в основной странице

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий