Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Аплоад (http://forum.oszone.net/showthread.php?t=54623)

fossil 01-10-2005 20:40 360708

Аплоад
 
Вобщем пишу аплоад, чтобы лил на халявный сервер файлы. Халявные сервера отличаются своей ограниченностью :) Возможно поэтому возникли проблемы.
Код:

<?PHP
$dir="/home/public_html/upload/";
$url="http://site.ru/upload";
$message="";

if (!file_exists($dir)) {
die ("Ошибка! Каталог не существует.");
}

if ($fupload != "") {
copy($fupload, $dir."/".$fupload_name) or die ("Ошибка! Не удалось скопировать файл.");
}

if ($action == "delete") {
unlink($dir."/".$fname) or die ("Ошибка! Невозможно удалить файл");
}

print "<body>";
print "<font>$message</font>";
print "<form enctype=\"multipart/form-data\" action=\"$PHP_SELF\" method=\"POST\">";
print "<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"104857600\">";
print "<input type=\"file\" name=\"fupload\"> <input type=\"submit\" value=\"Отправить\">";
print "</form>";

$read_dir=opendir($dir);
$i=1;
while ($file = readdir($read_dir)) {
$i++;
if ($file != ".." and $file != "." and is_file($dir."/".$file)) {
        $file_size=filesize($dir."/".$file);
        $full_url=$url."/".$file;
        print "<table width=\"340\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
        <tr><td width=\"60%\">
        <a href=\"$full_url\"><font>$file</font></a></td>
        <td width=\"30%\"><font>$file_size B</font></td>
        <td><a href=\"$PHP_SELF?&action=delete&fname=$file\">[Удалить]</a></td></tr>
        </table>";
        }
}
?>

Вываливается сообщение:
Warning: copy(): open_basedir restriction in effect. File(/var/tmp/php9bnUmn) is not within the allowed path(s): (/home/public_html) in /home/public_html/index.php on line 18
Ошибка! Не удалось скопировать файл.

elfoflorien 01-10-2005 23:29 360742

fossil
Цитата:

is not within the allowed path
значит, в тот директорий копировать нельзя. попробуйте изменить переменную $dir, и посмотрите, что скажет PHP

fossil 02-10-2005 18:57 360861

Пишет что нет доступа. Да и вообще, я немного изменил, убрал enctype=\"multipart/form-data\". Дак теперь пишет что нет доступа для заливки файла. Директорию отчмодил естественно. Ссылается что ошибка на 23 строке. На функции copy();


Время: 20:21.

Время: 20:21.
© OSzone.net 2001-