Перейти к содержимому



Помогите с подключением файлов через php

#1 bor10811

bor10811
  • Пользователь
  • 15 сообщений
  • Репутация: 0
0

Отправлено 29 Сентябрь 2017 - 19:02

Подключаю файлы через php с помощью include. В корне документа задан относительный путь, всё работает нормально. Однако в папках абсолютный путь почему-то не срабатывает:

include "http://karandash-konversii.ru/headblock.html"

  

При этом в такой форме:

include "../headblock.html" 

Файлы подключаются, но я нигде не видел, чтобы в характеристиках include говорилось, что абсолютный путь надо заменять на две точки.

 

При этом такой способ работает для файлов в тех папках, которые расположены непосредственно в корне документа. Если путь более длинный, то подключения не происходит.

 


 

 

Сообщение отредактировал BLIK: 29 Сентябрь 2017 - 20:16
вставил код

  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85
Советую обратить внимание на следующее:
  1. Помогите с шаблоном php
  2. Передача переменной через функцию include
  3. Подключение внешнего JS-файла, сгенерированного с помощью PHP
  4. Подключение файла с помощью include
  5. Как подключить файл PHP к MySql

#2 ShowPrint

ShowPrint
  • Пользователь PRO
  • 2 567 сообщений
  • Репутация: 666

Отправлено 29 Сентябрь 2017 - 19:33

@bor10811,попробуйте указать путь от корня сайта: 

include '/path/file.inc';

Страница, о которой идёт речь
О! В кои-то веки сайт рукописный, а не на cms  :)
  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#3 miketomlin

miketomlin
  • Пользователь
  • 341 сообщений
  • Репутация: 60

Отправлено 30 Сентябрь 2017 - 11:25

О! В кои-то веки сайт рукописный, а не на cms
Угу, на файлах – беее, ЧПУ с расширением .php – беее :)

 

@bor10811, то что вы показали в первом примере, практически не используется. Выполняется отдельный запрос, вставляется результат выполнения headblock.html по этому отдельному запросу.

 

Нужно использовать полный внутрисистемный путь, но естественно не прописывать его явно, а составлять из нек. базы (обычно корня сайта или «каталога приложения») и относительного пути (пограничный слеш может быть указан либо в конце базы, либо в начале отн. пути), например:

include(PATH.'include/dbconfig.php');

При вставке блоков в шаблоны часто в качестве базы используют тек. каталог шаблонного файла, например:

<?php include(__DIR__.'/widgets/search.php'); ?>

Так же можно определить в качестве базы и корень сайта, разместив определение в файле, гарантированно расположенном в корне сайта, а потом использовать это определение в др. подключаемых файлах. Для корня сайта в качестве базы еще иногда используют $_SERVER['DOCUMENT_ROOT'] в файлах, расположенных в любых каталогах.

 

P.S. Если подключается статик, лучше использовать не include/require, а readfile, чтобы не тратить впустую время на анализ содержимого с целью исполнения того, что не предназначено для исполнения.


  • 0


Оформление форума – IPBSkins.ru