Извините за еще одну главу «php include», но поиск по которой дает около 90 000 записей, и я чувствую, что читал 1/2 из них.PHP «include» failed (redux)
Я воскрешаю веб-страницу, которую я написал около 9 лет назад на Win 2000 Pro. С тех пор я легко портировал его на Ubuntu 10.0, Windows 7 и опубликовал его через 2 разных хостинг-сайта. Теперь я на Ubuntu 14.04, и я не могу заставить команду «включить» php работать. Код выглядит следующим образом:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Main Menu movietime.php</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<?php error_reporting(E_ALL);?>
<body background="wood.gif">
<form method="post">
<input type="hidden" name="hiddenn" value="hide & ">
<hidden name="hidden" value="well hid">
</form>
<?php
include dirname(__FILE__).'menu.php';
?>
<h1 align="center"><strong>Movie Database</strong></h1>
<h2 align="center"><strong>Main Menu </strong></h2>
<br>
<br>
<br>
<?php
echo '<h3 align="center"><strong>'.$status.'</strong></h3>';
?>
Проблема здесь состоит в том, что включают «menu.php» никогда не бывает так, ссылки на остальные приложения не появляются. Код для menu.php:
<div align="center">
<font size="2">
<a href="../">Home Page</a>
<a href="create.php">Create Movie Table</a>
<a href="drop.php">Delete Movie Table </a>
<a href="list_radio.php">List</a>
<a href="add.php">Add Movie</a>
<a href="delete.php">Delete Movie</a></font>
</div>
Следующая инструкция php для отображения состояния $ всегда работает. Я бы хотел показать вам результирующую страницу, но у меня нет достаточного количества баллов для этого (я думаю ... первый раз здесь).
вещи я попытался это:
Ctrl-U на Firefox показывает источник. Источник, отображаемый ctrl-u , не отличается от исходного кода.
Я установил файл php_errors.log в/var/log и указал на него в пределах
php.ini. Ничего в этом не происходит. Разрешения - 755. Я даже
с ошибкой «включить» и по-прежнему нет ошибок.Заменено php.ini_development для php.ini и по-прежнему не нужно.
(error_reporting и display_errors были включены в обоих случаях).I tail -f Apache access.log в одном окне xterm и хвосте -f error.log в другом. Единственный раз, когда я вижу вывод в error.log, - это когда Я завершаю/запуска Apache. Единственный раз, когда я вижу вывод в access.log , - это когда я перезагружаю страницу. Он показывает GET для movietime.php и GET для wood.gif и все.
Исправлена замена полной ссылки на каталог для "dirname (FILE)" в заявлении include ... nogo.
Не знаю, что еще делать в этот момент. Я запускаю Apache 2.4.7 и PHP 5.5.9
Я с нетерпением жду любых предложений и идей.
--thanks --Gary
' 'И' Php include (dirname (__ FILE __). '/ Menu.php'); ?> ' –
' dirname() 'не возвращает конечную косую черту, поэтому вы создаете'/foo/barmenu.php', а не '/ foo/bar/menu.php'.И если вы видите PHP-код в источнике просмотра вашего браузера, то вы ** НЕ ** выполняете php-код вообще. сценарий отправляется как обычный текст. –
Я добавил там «ini_set» и исправил недостающие «/» перед menu.php и ничего не вижу. –