[PHP] upload pliku na serwer

0

Witam,
korzystam z gotowego skryptu wrzucania plików na serwer z książki PHP i MySQL Tworzenie stron WWW. Oto cześć skryptu skryptu :


// umieszczenie pliku w pożšdanej lokalizacji
  $lokalizacja = '/webmaster/****/user/witryna/wyslane/'.$_FILES['plikuzytkownika']['name'];

  if (is_uploaded_file($_FILES['plikuzytkownika']['tmp_name'])) 
  {
     if (!move_uploaded_file($_FILES['plikuzytkownika']['tmp_name'], $lokalizacja))
     {
        echo 'Problem: Plik nie może być skopiowany do katalogu';
        exit;
     }
  } 
  else 
  {
    echo 'Problem: możliwy atak podczas wysyłania pliku. Nazwa pliku: ';
    echo $_FILES['plikuzytkownika']['name'];
    exit;
  }

a oto wynik:

Warning: move_uploaded_file(/webmaster/****/user/witryna/wyslane/test.txt): failed to open stream: Permission denied in /webmaster/****/user/witryna/wyslij.php on line 35

Warning: move_uploaded_file(): Unable to move '/tmp/php7Yv418' to '/webmaster/****/user/witryna/wyslane/test.txt' in /webmaster/****/user/witryna/wyslij.php on line 35
Problem: Plik nie może być skopiowany do katalogu

linijka 35 ze skryptu wyzej to:

if (!move_uploaded_file($_FILES['plikuzytkownika']['tmp_name'], $lokalizacja))

z phpinfo():

open_basedir /webmaster/****/user/witryna

Czy da się to jakość obejść?? Z tego co zrozumiałem chodzi o brak dostępu.

0

Nie masz praw do zapisu do /webmaster/*/user/witryna/wyslane/. Musi on mieć ustawione prawa na takie, by serwer WWW mógł tam zapisać - na ogół muszą to być 777.

Określa się to jako tzw. chmod. Można go zmienić w kliencie FTP dla danego folderu (ewentualnie przez SSH, jeśli masz taką możliwość).

0

[wstyd] działa :)
wielkie dzięki

1 użytkowników online, w tym zalogowanych: 0, gości: 1