define('ROOT', str_replace('\\', '/', $_SERVER['DOCUMENT_ROOT']).'/');
Вот с этим я спокойно подключаю файлы в любом месте, независимо от уровня
их расположения
А если вот это поставить
define('ROOT', str_replace('\\', '/', dirname(__FILE__)));
Тогда уровень расположения каталога придется учитывать, если я к примеру
подключаю файл не из текущего каталога а из другой папки
И если к примеру не устраивает $_SERVER['DOCUMENT_ROOT'], то
можно узнать полный путь и прописать его вместо $_SERVER['DOCUMENT_ROOT']
Цитата |
Кратко. ссылка avtomobile == файл avtomobile.tpl
|
Ты же сказал что тему перечитаешь, про названия 1,2,3... не я придумал, а ТС
так удобнее, вот пусть так и пишет для себя
Плюс по твоему коду, нужно в каждом tpl файле прописывать
Подключение стилей хейдера, меню ну и так далее
А я в коде подключаю единственный главный шаблон в котором прописываются
стили, шмили и так далее, а уже в этом шаблоне меняется только контент
Но твой код тоже неплох
Цитата |
Чем сможем поможем wink.gif |
Это да. Я сам в принципе начинающий в ПХП, просто понимаю когда хочется сделать
и не знаешь как, пытаешься что то сделать и не выходит, вот поэтому и решил помочь ТС
А так, да, учится нужно, благо для этого вроде хватает материала
VeRTak
27.05.2016 - 10:49
Цитата (Astin @ 27.05.2016 - 10:42) |
Вот с этим я спокойно подключаю файлы в любом месте, независимо от уровня их расположения |
$_SERVER['DOCUMENT_ROOT'] это переменная окружения сервера полученная PHP из вне, на неё нельзя особо полагаться, она зависит от конфигурации сервера, и в некоторых случаях может указывать неправильный путь, не говоря уже наличии/отсутствии слеша в конце. Доверять можно только встроенным волшебным константам __DIR__, __FILE__
Цитата (Astin @ 27.05.2016 - 10:42) |
Ты же сказал что тему перечитаешь |
Лень, сильно много страниц, вечером посмотрю.
Цитата (Astin @ 27.05.2016 - 10:42) |
так удобнее, вот пусть так и пишет для себя |
Удобно не есть хорошо. Опять же должна быть логика, с пользой.
Цитата (Astin @ 27.05.2016 - 10:42) |
Плюс по твоему коду, нужно в каждом tpl файле прописывать Подключение стилей хейдера, меню ну и так далее |
Опять без логики.... Зачем каждый раз прописывать?
Кратко...
ob_start();
include ROOT. $rem'.html';
$content = ob_get_clean();
include ROOT. 'index.html';
в index.html пишем свои хеадеры,меню,футеры,барабаны с кеглями и.т.д где нужен контент выводит переменную content
Цитата |
Кратко...
ob_start(); include ROOT. $rem'.html'; $content = ob_get_clean(); include ROOT. 'index.html'; |
Тоже интересно написано, для себя буду знать на будущее
Цитата |
$_SERVER['DOCUMENT_ROOT'] это переменная окружения сервера полученная PHP из вне, на неё нельзя особо полагаться, она зависит от конфигурации сервера, и в некоторых случаях может указывать неправильный путь, не говоря уже наличии/отсутствии слеша в конце. Доверять можно только встроенным волшебным константам __DIR__, __FILE__ |
Ну я же писал если не устраивает $_SERVER['DOCUMENT_ROOT'], можно просто
узнать полный путь и прописать его, а с волшебным константам придется учитывать
уровень вложености файла если он подключается из другого каталога
Цитата |
Удобно не есть хорошо. Опять же должна быть логика, с пользой. |
Не спорю, правильно говоришь. Я тоже когда первый раз увидел 1,2,3... не понял
почему так, а ТС ответил что ему так проще чтоб не запутаться
VeRTak
27.05.2016 - 11:13
Цитата (Astin @ 27.05.2016 - 11:00) |
можно просто узнать полный путь и прописать его, а с волшебным константам придется учитывать уровень вложености файла если он подключается из другого каталога |
Еще раз повторю должна быть логика, как пример...
function loadHelper ($file, $system = TRUE)
{
if($system)
{
if(is_array($file))
{
foreach ($file as $value) {
require_once ....
}
}
else
{
require_once ....
}
}
else
{
if(is_array($file))
{
foreach ($file as $value)
{
require_once ....
}
}
else
{
require_once ....
}
}
}
Дальше по образу и подобию loadModel, loadLibraries, LoadCore ... переменную system не обязательно юзать, тут все зависит от того у какого какая структура приложения, у меня системные файлы отдельно, приложение отдельно
не путай
уже сделал все как надо!!! все файлы перекодировал через нотепад в кодировку без бум.
в файле 1.tpl написал так:
<br/><br/>
<b>1.tpl<br/><br/>
- 2.tpl<br/>
- 3.tpl<br/><br/>
<?php include_once ROOT.'tpl/2.tpl'; ?><br/>
<?php include_once ROOT.'tpl/3.tpl'; ?><br/>
а так как в 1 входит 2 3 значит в 4.tpl
можно написать так:
<br/><br/>
<b>4.tpl<br/><br/>
- 5.tpl<br/>
- 6.tpl<br/><br/>
<?php include_once ROOT.'tpl/2.tpl'; ?><br/>
<?php include_once ROOT.'tpl/3.tpl'; ?><br/>
VeRTak
27.05.2016 - 12:12
Цитата (leonw @ 27.05.2016 - 12:07) |
не путай |
What?

Тогда такой вопрос, вам нужен готовый код или вы учитесь?
когда не знаешь как писать и что писать спасает готовый код, его учишь
и потом знаешь как писать. пр: я раньше не знал что такое сессии, пока мне не показали на готовом примере с чем его едят. и после этого получилось sincorrer.xyz
там правда есть небольшие не до четы, но учитель сказал: что хорошо.
VeRTak
27.05.2016 - 13:14
leonwПроверка на одном js это не проверка, лови пустое письмо
все ровно же клева получилось!!!!
VeRTak
27.05.2016 - 14:29
leonw Я понял твою позицию, удачи в начинаниях
Да то что тебе не важно как будет написан код, правильно или как попало лиж бы
работал.
И Wind прав, нужно делать правильно, он тебе об этом и говорил, ели
ты не понял
Короче я так понял, что код ты дописал и у тебя теперь все работает, так?
да!!! спасибо!!!!!!!!!! чуть позже покажу что получилось
leonw
Ну и что ты пропал, хоть отпиши работает или нет у тебя
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.