Цитата:
Только почему то не работает
|
Конечно не работает.
Код:
if (file_exists ($_GET['id'])) {
fopen ($_GET['id']);
fpassthru($_GET['id']);
}
Итак, проверили файл на наличие. Далее открываем его. Функция fopen() возвращает указатель на файл. Т.е. его надо где-то сохранить. Пишем так:
$file = fopen($_GET['id']. ".txt"); (ну или с другим расширением). Указатель на файл сохранится в переменной $file. Далее уже его нужно использовать в следующей функции. fpassthru($file);
Я точно не знаю, но по-моему даже так работать не будет. Потому что прочитанный файл нужно куда-то сохранить. Так? Пишем
$content=fpassthru($file);. Содержимое файла сохраняется в переменной $content. Далее эту переменную отправляем на вывод:
echo $content; Хотя, конечно, можно написать и просто
echo fpassthru($file); А затем не забываем закрыть указатель
fclose($file); - на всякий случай.
Цитата:
Я таким образом ещё не просто текст подключаю, но и пхп код гостевой книги, добавления новостей.
|
В этом случае никаких fpassthru() и подобных. Код подключается только через одну из четырёх функций include-require. Проблемы могут возникнуть если код большой. Т.е. из подключаемого файла подключается ещё какой-то и т.д. С линейной структурой всё должно быть в порядке. Я, например, всегда использую require_once() - и нет никаких проблем. Сбой будет если одна и та же функция подключается несколько раз (что исключается при использовании require_once() и include_once()) - потому что возникает переопределение функции. Можете посмотреть это, создав в основном коде две разные (или одинаковые) функции с одинаковыми именами.