Проблем с include

piero03

Registered
Здравейте, имам следния проблем:
използвам следния скрипт за включване на съдържание
в PHP страница:
<?php
include('/folder/file.php');
?>
като това трябва да зареди съдържанието на file.php от директориятя folder.
Да ама не ....
Пробвах всякакви варианти за относителни или преки пътища към директорията, но нищо не става.
Всичко работи ако файла в който зареждам скрипта е в същата директория.
Та въпроса ми е как да зареди съдържанието на file.php от под папка folder например.
 
Не става, изписва ми се следната грешка
Warning: main(php) [function.main]: failed to open stream: No such file or directory in /www/domein.com/root/index.php on line 13

Като index.php е файла в който трябва да се зареди folder/file.php
 
Четох за подобен случай, при който имаше някакво ограничение от самия сървър, което се преодолява чрез качване на допълнителен файл
 
Ето кода, който се опитвам да заредя в файла извън папката:

<?php
// Тази функция чете всички новини.
function getNewsList(){

$fileList = array();

// Отваря директорията
if ($handle = opendir("news")) {
// Чете всички файлове от директорията.
while ($file = readdir($handle)) {
if (!is_dir($file)) {
$fileList[] = $file;
}
}
}

rsort($fileList);

return $fileList;
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

</head>
<body>

<?php

$list = getNewsList();
foreach ($list as $value) {
$newsData = file("news/".$value);

$newsTitle = $newsData[0];
$submitDate = $newsData[1];
$newsTitle2 = $newsData[2];
unset ($newsData['0']);
unset ($newsData['1']);
unset ($newsData['2']);

$newsContent = "";
foreach ($newsData as $value) {
$newsContent .= $value;
}
echo "<th>$newsTitle2<br /><br /> </th>";
echo "<tr><th align='left'>
<$newsTitle ></th>
</tr>";
echo "<tr><td colspan='2'>".$newsContent.
"<br/><hr size='1'/></td></tr>";
}
?>

</body>
</html>
 
<?php include('/folder/file.php'); ?>

<?php include('../folder/file.php'); ?>

<?php include('..folder/file.php'); ?>

<?php include('folder/file.php'); ?>
 
Използвай $_SERVER['DOCUMENT_ROOT']
Код:
include $_SERVER['DOCUMENT_ROOT'].'/folder/file.php';
или
Код:
include $_SERVER['DOCUMENT_ROOT'].'folder/file.php';
 
Проблема се реши, като преминахме от PHP4 към PHP5 на сървъра, където се хоства сайта. :D
 

Back
Горе