@pitimirov_a

Как правильно настроить обращение к файлам на сервере в скриптах PHP?

Пример:
1. Директории на воображаемом хостинге
корень_на_хостинге/file1.php
корень_на_хостинге/folder/file2.php
корень_на_хостинге/text.txt
2. Содержимое file1.php
<textarea><?php include $_SERVER["DOCUMENT_ROOT"]."/folder/file2.php"; ?>

3. Вопрос
Как (внутри file1.php +) внутри file2.php инклудировать text.txt, чтобы содержимое text.txt в той-или-иной папке оказывалось в каждом file1.php той же папки?
file2.php располагается в одной неизменяемой папке.
4. Пояснение к вопросу
корень_на_хостинге/folder/file2.php
корень_на_хостинге/file1.php // include folder/file2.php + include text.txt
корень_на_хостинге/text.txt
корень_на_хостинге/folder2/file1.php // include ../folder/file2.php + include text.txt
корень_на_хостинге/folder2/text.txt

_________________________________________________________________________________________
корень/meta.html внутри которого
<title><?php 
if (file_exists(dirname(__FILE__)."/title.txt"))
{
include dirname(__FILE__)."/title.txt";
}
?></title>
<meta name="description" content="<?php 
if (file_exists(dirname(__FILE__)."/description.txt"))
{
include dirname(__FILE__)."/description.txt";
}
?>">

корень/index.php
корень/about/index.php
корень/shop/index.php

корень/title.txt
корень/about/title.txt
корень/shop/title.txt

внутри которых:
<!DOCTYPE html>
<html>
<head>
<?php include $_SERVER["DOCUMENT_ROOT"]."/meta.html"; 
/*Хоть я инклудирую html файл, php внутри него обрабатывается на любой из index.php */?>
</head>
<body>
[SOME CONTENT]
</body>
</html>


В каждом из трех каталогов ( " / " , " /about " , " /shop ") есть по собственному файлу title.txt.
  • Вопрос задан
  • 1090 просмотров
Пригласить эксперта
Ответы на вопрос 2
@proger_rr
Хм ты пытаешься в html файле использовать такую конструкцию?
<title><?php 
if (file_exists(dirname(__FILE__)."/title.txt"))
{
include dirname(__FILE__)."/title.txt";
}
?></title>
<meta name="description" content="<?php 
if (file_exists(dirname(__FILE__)."/description.txt"))
{
include dirname(__FILE__)."/description.txt";
}
?>">

Для начала переименуй в meta.php и делай так
<?php include "meta.php"; ?>
а meta.php закинь во вложенные папки тоже
Ответ написан
Комментировать
@AlikDex
если у вас едина точка входа:
<?php
defined('@root') or define('@root', __DIR__);
include @root . DIRECTORY_SEPARATOR . "text.txt";
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы