[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не получается include
t0xic
Есть файл dbconfig.php

<?PHP
define ("DBHOST", "sql.host.org.ua");
define ("DBNAME", "db_name");
define ("DBUSER", "db_user");
define ("DBPASS", "pass");
define ("PREFIX", "prefix");
define ("COLLATE", "cp1251");
define ("USERPREFIX", "usrpr");
$db = new db;
?>


Есть другой файл file.php
Нужно чтобы эти дефайны были видны в file.php
Как сделать правильный инклуд?
include '/data/dbconfig.php';
echo DBHOST;

результат - надпись DBHOST

Через require_once - тоже самое. В чем моя ошибка?



Спустя 5 минут, 7 секунд (2.08.2010 - 15:26) arvitaly написал(а):
include - это функция. параметры передаются в скобках

include ('data/dbconfig.php');

Спустя 12 минут, 43 секунды (2.08.2010 - 15:39) Ice написал(а):
Цитата (arvitaly @ 2.08.2010 - 16:26)
include - это функция

Include - это конструкция, такая же как и print, и echo, и require и написание ее без скобок не является ошибкой.

Спустя 11 минут, 29 секунд (2.08.2010 - 15:50) Slays написал(а):
t0xic
путь проверь

Спустя 1 час, 1 минута, 42 секунды (2.08.2010 - 16:52) Bodich написал(а):
Еще вопрос про include почему не работает код ---

if     ($type="books")    {include 'pre_view_books.php';}  
elseif ($type="articles") {include 'pre_view_articles.php';}
elseif ($type="recept") {include("blocks/pre_view.php");}
elseif ($type="pod_rec") {include("pod_view.php");}


при любых значениях $type подключается первый {include 'pre_view_books.php';}

Спустя 2 минуты, 36 секунд (2.08.2010 - 16:55) Ice написал(а):
потому что надо не присваивать, а сравнивать (==)

Спустя 15 минут, 56 секунд (2.08.2010 - 17:11) t0xic написал(а):
Slays
Проверил. Вроде путь правильный. Не работает.
Полюбому ж какая-то мелочь всё порит.

Спустя 12 минут, 32 секунды (2.08.2010 - 17:23) igor717 написал(а):
В том случаи если ты делаешь ошибку в написании пути к файлу, функция include должна выводить ошибку, неужели ее нет?

Спустя 1 час, 4 минуты, 36 секунд (2.08.2010 - 18:28) Slays написал(а):
t0xic
пропиши в подключаемом файле обычный вывод типо echo "файл подключен", если выведется, то дело точно не в пути.

еще пропиши в заголовке error_reporting(E_ALL); может оно все же что-то сообщит.
Из таво кода что ты предоставил, судить сложно =)

Спустя 1 час, 23 минуты, 8 секунд (2.08.2010 - 19:51) arvitaly написал(а):
include '/data/dbconfig.php';

уберите первый слеш, так как PHP ищет файл в корне

И если уж и это не поможет попробуйте так

if (file_exisits("data/dbconfig.php"))
{
include 'data/dbconfig.php';
}
else
{
die("Ошибка подключения файла");
}

Спустя 17 часов, 1 минута, 32 секунды (3.08.2010 - 12:52) t0xic написал(а):
dbconfig.php

<?PHP
define ("DBHOST", "sql.host.org.ua");
define ("DBNAME", "db_name");
define ("DBUSER", "db_user");
define ("DBPASS", "pass");
define ("PREFIX", "prefix");
define ("COLLATE", "cp1251");
define ("USERPREFIX", "usrpr");
$db = new db;
echo "OKKKKKKKKKKKEEEEEEEEEEEEYYYYYYYYYYY";
?>



test.php
<?
if (file_exisits("/data/dbconfig.php"))
{
include '/data/dbconfig.php';
}
else
{
die("Ошибка подключения файла");
}
?>


без первого слеша тоже пробовал:)
В результате работы - пустой экран. Если кусок кода вставить в основной скрипт - основной скрипт перестает выполняться, аналогично выдается пустая страница.

<?
error_reporting(E_ALL);
if (file_exisits("/data/dbconfig.php"))
{
include '/data/dbconfig.php';
}
else
{
die("Ошибка подключения файла");
}
?>


аналогично, ничего не выводится.

Спустя 3 минуты, 59 секунд (3.08.2010 - 12:56) Ice написал(а):
у Вас либо display_errors=off, либо...
file_exisits
потому что тут ошибка.

Спустя 28 минут, 39 секунд (3.08.2010 - 13:25) igor717 написал(а):
Еще есть вариант, что раз он подгружает класс $db = new db; и при этом пользуется функцией __autoload(), то в этом случаи ошибка сделанная внутри этого класса выводится не будут, а скрипт будет завершать работу. Следовательно
echo "OKKKKKKKKKKKEEEEEEEEEEEEYYYYYYYYYYY";
тоже не должно выводится.

Спустя 26 минут, 4 секунды (3.08.2010 - 13:51) arvitaly написал(а):
Вы можете сказать структуру папок у вас

Спустя 13 минут, 52 секунды (3.08.2010 - 14:05) linker написал(а):
$db = new db; в файле config.php откуда там класс db? Ошибка, а так как у вас display_errors = Off, то вы ничего не видите.

Спустя 22 часа, 49 минут, 3 секунды (4.08.2010 - 12:54) t0xic написал(а):
Ice
Вот, ошибку эту я не заметил. И вправду, стало выводить
Ошибка подключения файла


display_errors=off -- можно включить без саппорта? Это свойство пхп или можно прям в скрипте прописать?

Цитата

linker
$db = new db; в файле config.php откуда там класс db? Ошибка, а так как у вас display_errors = Off, то вы ничего не видите.


без понятия, я разбираю код cms'ки.. пишу небольшой хак.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.