Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Upload plików
Forum PHP.pl > Forum > Przedszkole
Qmis
Witam
chce zrobić wysyłanie plików na serwer z poziomu formularza i nie wiem dlaczego nie chce działać
Mam taki formularz wstawiany za pomocą funkcji:
  1. <?php
  2. function formNews($path, $tytul, $tresc, $id_wpr, $nrNews)
  3. {
  4. print "<form name=\"news\" action=\"".$path."\" method=\"POST\" enctype=\"multipart/form-data\"> ";
  5. print "Wpisz tytuł wiadomości<br />";
  6. print "<textarea name=\"tytul\" maxlength=\"150\" cols=\"50\" rows=\"2\" >".$tytul."</textarea> ";
  7. print "<br />Wpisz treść wiadomości<br /> ";
  8. print "<textarea name=\"tresc\" cols=\"50\" rows=\"10\" >".$tresc."</textarea> <br />";
  9. print "<input type=\"reset\" value=\" Wyczyść\"> ";
  10. print "<input type=\"submit\" name=\"dodaj\" value=\" Opublikuj wiadomość\" > ";
  11. if ($nrNews != "")
  12.  {
  13. print "<br /><br />";
  14. print "<input type=\"file\" name=\"fotka\" > ";  //id=\"fotka\" value=\" Dodaj zdjęcia\"
  15. //print "<br /><input type=\"button\" value=\"Dodaj fotkę\" onclick=\"document.getElementById('dodajPlik').value = document.getElementById('fotka').value;document.forms[0].submit();\">";
  16. //print "<input type=\"hidden\" name=\"dodajPlik\" id=\"dodajPlik\" >";
  17. print "<input type=\"submit\" name=\"dodajPlik\" value=\" Dodaj fotkę \" > ";
  18.  }
  19. print "<input type=\"hidden\" name=\"id_user\" id=\"id_user\" value=\"".$id_wpr."\"> ";
  20. print "<input type=\"hidden\" name=\"nrNews\" id=\"nrNews\" value=\"".$nrNews."\"> ";
  21.  
  22. print "</form> ";
  23.  
  24. }
  25. ?>

I do przetworzenia taki kod:
  1. <?php
  2. $plik_nazwa = $_FILES['fotka']['name'];
  3. $plik_tmp = $_FILES['fotka']['tmp_name'];
  4. $uploaded = "tmp/".basename($plik_nazwa);
  5.  
  6.  if (is_uploaded_file($plik_tmp)) 
  7. {
  8. if (move_uploaded_file($plik_tmp, $uploaded))
  9.  echo "Operacja przebiegła pomyślnie";
  10. else print "nie przeslano pliku <br>";
  11. print_r($_FILES['fotka']);
  12. }
  13.  else {
  14. echo 'Błąd przy przesyłaniu danych!';
  15.  }
  16. ?>

print_r($_FILES['fotka']); zwraca
Array ( [name] => Dok1.doc [type] => application/msword [tmp_name] => /tmp/phpGNWbK0 [error] => 0 [size] => 548352 )
i dostaje jeszcze :
Warning: move_uploaded_file(tmp/Dok1.doc): failed to open stream: No such file or directory in cos/cos/cos/obr_news.php on line 57

Warning: move_uploaded_file(): Unable to move '/tmp/phpGNWbK0' to 'tmp/Dok1.doc' in
cos/cos/cos/obr_news.php on line 57
nie przeslano pliku

Nie wiem czy mam błąd u siebie czy może chodzi o jakieś ustawienia serwera
nospor
"tmp/"
czyli bedziesz zapisywal do katalog tmp w katalogu, zktorego odpaliles ten skrypt. Maszs w tym katalogu katalog tmp? Masz do niego prawa zapisu?
Qmis
Dzięki
Katalog miałem tylko tylko z prawami 775 a nie 777.
Niby prosta sprawa a jednak może zaskoczyć :roll2:
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.