Forum Webscript.Ru
Программирование => PHP => Тема начата: Mefisto от 17 Июня 2003, 15:27:04
-
Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/var/tmp/phpWAgnFn) is not within the allowed path(s): (/usr/local/apache/www/comfest.ru) in /usr/local/apache/www/comfest.ru/admin/news.php on line 59
возникает при попытки аплоада картинки
хостер говорит, что с аплдоадами на сервере все в порядке
-
это значит что у вас нет доступа ко временной директории /var/tmp/phpWAgnFn в которую закачан файл
-
пытаешься вылезти при помощи file_exists за границы твоего DocumentRoot
Скорее всего ошибка в скрипте аплоада
-
вот кусок кода,который обрабатывает аплоад добавления новости с двумя картинками.
причем на локалке все работает
if (@$add==2)
{
$text = bez($text);
if(file_exists($img_small))
{
$ext=ereg_replace("^.*\\.([a-zA-Z]*)$","\\\\1",$img_small_name);
if($ext=="gif" || $ext=="jpg" || $ext=="jpeg" || $ext=="png")
{
$imgname1="1".time().".".$ext;
copy($img_small,"img_news/".$imgname1);
chmod ("img_news/".$imgname1, 0666);
$picture_small=",img_small=\'$imgname1\'";
}
}
if(file_exists($img_big))
{
$ext=ereg_replace("^.*\\.([a-zA-Z]*)$","\\\\1",$img_big_name);
if($ext=="gif" || $ext=="jpg" || $ext=="jpeg" || $ext=="png")
{
$imgname2="2".time().".".$ext;
copy($img_big,"img_news/".$imgname2);
chmod ("img_news/".$imgname2, 0666);
$picture_big=",img_big=\'$imgname2\'";
}
}
$date = $year.$month.$day.date("His");
$sql = "INSERT INTO com_news SET text=\'$text\', date=\'$date\' $picture_small $picture_big ";
mysql_query($sql);
echo mysql_error();
}
-
http://www.php.net/is_uploaded_file
http://www.php.net/move_uploaded_file
-
а если этот скрипт работает на одном хостинге, но не работает на другом?
чудеса...
-
Mefisto:
чудеса...
неа
криво написанный скрипт
-
а не криво написанный можешь привести?
-
http://ru2.php.net/manual/en/features.file-upload.php
-
Скрипт оказался верный
просто гр**баный хостер не поставил на временную папку для аплоада права 0777
-
Mefisto
Угу, правильно, пусть поставит.
В таком случае, если у тебя не колокейшн или что покруче, все юзеры того же хостера будут читать/писать твои загружаемые файлы :)
-
FreeSpace:
все юзеры того же хостера будут читать/писать твои загружаемые файлы
Вот эжто совсем не факт.
-
Почему же?
Хотя да, если safe_mode и open_basedir...