Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проблема с include()
 
 автор: naught   (22.09.2004 в 21:05)   письмо автору
 
 

Хммм... Я уже отчаялся лазать по РУнету в поисках ответа на свой вопрос, да и полазав по вашему форуму ответа не нашел... В общем проблема такая... Ставил Apache2 + PHP 5.0.1 + MySQL на XP, следуя совету по установке опубликованному как в вашей книге, так и на вашем сайте... Все работает нормально, но(!) сначала у меня отказала запускаться СУБД, точнее PHP говорил, что отсутствует библиотека нужная/или не верно указан путь к файлу. Я мозг ломал долго и php.ini редактировал, меня путь к дллке, и хелп читал PHPшный... В итоге где-то там отрыл что-то про программку strace, с помошью нее кое-как отследил запросы Apache2 в общем пришел к выводу, что просто надо скопировать php_mysql.dll в папку C:\Windows\ (это я к тому, что может у кого такая же проблема...)
Так вот... настроив все (я так на это надеялся), я проверил PHP простейшим скриптом - все работает... Но как только дело дошло до include() функции - тут-то проблемы и посыпались... Ну не хочет он инклюдить ни в какую! Пишет, что файл либо отсутствует и еще какую-то дребедень, хотя на связке Apache + PHP 4 + MySQL все работало отлично...
Да, забыл сказать, register_globals включил... не помогло...

   
 
 автор: cheops   (22.09.2004 в 21:29)   письмо автору
 
   для: naught   (22.09.2004 в 21:05)
 

Хм... посмотрите, не раскомментировали ли вы в результате боёв с php.ini директиву include_path:
;include_path = ".;c:\php\includes"

Если это так - попробуйте закомментировать обратно.

PS Путь к библиотекам расширений PHP, которые в PHP 5 по умолчанию все отключены можно прописать при помощи директивы extension_dir файла php.ini.

http://www.softtime.ru/info/articlephp.php?id_article=24

   
 
 автор: naught   (22.09.2004 в 21:38)   письмо автору
 
   для: cheops   (22.09.2004 в 21:29)
 

include_path:
;include_path = ".;c:\php\includes"

закомментирован.

PS. Знаю, что можно. Пробовал. Не помогало. Пришлось strace'ить...
PPS. И статью, собсно, читал... По ней и устанавливал...

   
 
 автор: cheops   (22.09.2004 в 22:40)   письмо автору
 
   для: naught   (22.09.2004 в 21:38)
 

А php.ini выложить здесь не можете... можно было бы попробовать его на заведомо рабочей конфигурации, чтобы посмотреть кто виноват...

   
 
 автор: naught   (22.09.2004 в 22:46)   письмо автору
 
   для: cheops   (22.09.2004 в 22:40)
 

В данный момент не могу, т.к из интернет-кафе пишу, но завтра обязательно выложу...

   
 
 автор: cheops   (22.09.2004 в 22:51)   письмо автору
 
   для: naught   (22.09.2004 в 22:46)
 

Хорошо... я завтра весь день on-line...

PS Можете выложить здесь или прислать по почте (simdyanov@softtime.ru, cheops@softtime.ru).

   
 
 автор: naught   (23.09.2004 в 21:10)   письмо автору
 
   для: cheops   (22.09.2004 в 22:51)
 

Так... Вот мой php.ini (не знаю, влезет он полностью или нет, поэтому прикреплю его дополнительно):

PS. httpd.conf завтра принесу тогда...

[поправлено модератором]

   
 
 автор: cheops   (23.09.2004 в 21:40)   письмо автору
 
   для: naught   (23.09.2004 в 21:10)
 

Замена моего php.ini на ваш (с перезагрузкой сервера Apache) не повлияло на работу скриптов, например, локальная версия этого форума, в котором includ-ов куча спокойно работал...

Хм... а не могли бы вы привести пример includ-ов, может вы их как хитро вызываете... и как ведут себя аналоги, например,
<?php
require("somefile1.php");
require_once(
"somefile.php");
?>


В любом, случае будем ждать ваш http.conf...

   
 
 автор: naught   (24.09.2004 в 20:57)   письмо автору
33.9 Кб
 
   для: cheops   (23.09.2004 в 21:40)
 

Значится так...
Инклюд у меня стандартный:
 <?php include("content.htm"); ?>
а затем в менюшке стоят ссылки на разные htm-странички м инфой для нужного раздела...

Пробовал функцию require, только вместо Warning выдает Fatal - вот и вся разница...
Это я вчера ночью попробовал. Сегодня вечером не далее как полчаса назад запустил свой сайтик... и что вы думаете? Все заработало... Хотя почему - не знаю. Я НИЧЕГО не менял. Т.е. ВООБЩЕ ничего не трогал. Мистика какая-то...

На всякий пожарный прихватил httpd.conf...

PS. Как должна выглядеть инклюд комманда, если переменная register_globals = off... Я так понимаю, на большинстве веб-серверов она отключена?...

   
 
 автор: glsv (Дизайнер)   (24.09.2004 в 21:40)   письмо автору
 
   для: naught   (24.09.2004 в 20:57)
 

Да, действительно странно.
А может вы что нибудь с машиной делали за это время? У вас ведь на локальном компе работает?

>PS. Как должна выглядеть инклюд комманда, если переменная register_globals = off...
А это не влияет на include. По ссылке - небольшая статья про register_globals

http://www.softtime.ru/info/articlephp.php?id_article=13

   
 
 автор: naught   (24.09.2004 в 21:51)   письмо автору
 
   для: glsv (Дизайнер)   (24.09.2004 в 21:40)
 

Да, машина локальная.
Нет, АБСОЛЮТНО ничего не делал...
Я просто где-то читал, что если глобальные переменные отключены, то ссылка должна выглядеть как-то типа {$_GET['content'].htm} или что-то в этом роде... Разве нет?

   
 
 автор: glsv (Дизайнер)   (24.09.2004 в 22:27)   письмо автору
 
   для: naught   (24.09.2004 в 21:51)
 

> просто где-то читал, что если глобальные переменные отключены, то ссылка должна выглядеть как-то типа {$_GET['content'].htm} или что-то в этом роде... Разве нет?

Ну нет. К includ-aм это никак не относится. Ни в коей мере.

   
 
 автор: glsv (Дизайнер)   (23.09.2004 в 21:59)   письмо автору
 
   для: naught   (23.09.2004 в 21:10)
 

Тоже самое.
--------------------
Попробовал Ваш PHP.ini. Все без проблем заработало. Только
extension_dir ="c:\php-5.0\ext" поставил свой.
Php.ini – нормальный. Ждем httpd.conf

   
 
 автор: glsv (Дизайнер)   (23.09.2004 в 00:46)   письмо автору
 
   для: naught   (22.09.2004 в 21:38)
 

Если сможете, то высылайте сразу и httpd.conf. Если были проблемы с сервером при установке, то они вполне могли остаться и сейчас.

   
 
 автор: cheops   (23.09.2004 в 21:42)   письмо автору
 
   для: naught   (22.09.2004 в 21:05)
 

Не могли бы вы так же привести кусочек кода и рекцию PHP-интерпретатора, что конкретно он пишет?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования