Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z plikami
Forum PHP.pl > Forum > PHP
Kryszic
Witam mam problem ze skopiowaniem pliku z dysku na serwer. Oto fragment kodu formularza:

  1. <input type="file" size=48 name="film" value="">


następnie po wciśnieciu wysłij mam:
  1. <?php
  2. $file = $HTTP_POST_FILES["film"]["tmp_name"];
  3. $zapisz_jako1 = $HTTP_POST_FILES["film"]["name"];
  4. ?>

...
  1. <?php
  2. $zapisz_jako='edycja/htmlarea/galerie/filmy/'.$zapisz_jako1;
  3.  
  4. if (!copy($file, $zapisz_jako)) {
  5.  
  6.  print ("Kopiowanie pliku nie powiodło się...<br>\n");
  7.  
  8.  } 
  9.  
  10.  print "<BR>Nazwa pliku: ".$HTTP_POST_FILES["film"]["name"];
  11.  
  12.  print "<BR>Rozmiar pliku: ".$HTTP_POST_FILES["film"]["size"];
  13.  
  14.  print "<BR>tymczasowo: ".$HTTP_POST_FILES["film"]["tmp_name"];
  15.  
  16.  print "<BR>Typ przesłanego pliku: ".$HTTP_POST_FILES["film"]["type"];
  17.  echo'<BR>';
  18. echo "copy($file, $zapisz_jako)";
  19. ?>


I w konsekwencji wyświetla mi się taki błąd:

Warning: copy() [function.copy]: SAFE MODE Restriction in effect. The script whose uid is 2145 is not allowed to access /home/www/gabo.pl/public_html/edycja/htmlarea/galerie/filmy owned by uid 0 in /home/www/gabo.pl/public_html/incl/strony.php on line 218

Warning: copy(edycja/htmlarea/galerie/filmy/798d.jpg) [function.copy]: failed to open stream: No such file or directory in /home/www/gabo.pl/public_html/incl/strony.php on line 218
Kopiowanie pliku nie powiodło się...

Nazwa pliku: 798d.jpg
Rozmiar pliku: 9808
tymczasowo: /tmp/phpypThWp
Typ przesłanego pliku: image/pjpeg
copy(/tmp/phpypThWp, edycja/htmlarea/galerie/filmy/798d.jpg)

Prosił bym o wszelkie wskazówki bo niby to proste a nie mogę sobie z tym poradzić. Z góry dziękuję.
Mordoran
  1. <?php
  2. if (is_uploaded_file($_FILES[$nazwa]["tmp_name"]))
  3. {
  4. $oldumask = umask(0);
  5. $katalog = "pcn/". $pcn_id;
  6. @mkdir($katalog, 0777);
  7. umask($oldumask);
  8.  
  9. if ($_FILES[$nazwa]["error"] > 0)
  10. {
  11. echo "Error: " . $_FILES[$nazwa]["error"] . "<br />";
  12. }
  13.  
  14. if (file_exists("pcn/". $pcn_id . "/" . $_FILES[$nazwa]["name"]))
  15. {
  16. echo $_FILES[$nazwa]["name"] . " already exists. ";
  17. exit();
  18. }
  19. else
  20. {
  21. move_uploaded_file($_FILES[$nazwa]["tmp_name"],"pcn/". $pcn_id . "/" . $_FILES[$nazwa]["name"]);
  22. echo 'File '.$nazwa_pliku.' sent'; echo '<br />';
  23. }
  24. }
  25. ?>


Ja uzywam cos takiego: move_uploaded_file" title="Zobacz w manualu PHP" target="_manual

PS to kod zywcem wziety z jakiegos mojego skryptu.
franki01
LUDZIE!! Kto uczy takiego czegos?! Jak sie czyta stare kursy to tak jest!

1. $HTTP_POST_FILES dawno sie nie uzywa! Uzywa sie $_FILES

2. copy() to tez juz przestarzala metoda. Jak napisal poprzednik - move_uploaded_file()
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.