Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload pliku i problem
Forum PHP.pl > Forum > PHP
unloco
Witam. Tworzę stronkę gdzie można również między innymi wgrać obraz na serwer:

  1. <input name="file" type="file" size="50"/>


Chciałbym najpierw przedstawić skrypt który znalazłem gdzieś w internecie i trochę go przerobiłem (mianowicie nazwa katalogu jest zmienną i nazwa pliku jest datą i godziną dodania go):

  1. $katalog = "upload/"; // do którego katalogu wrzucamy plik
  2. if ((($_FILES["file"]["type"] == "image/gif")
  3. || ($_FILES["file"]["type"] == "image/jpeg")
  4. || ($_FILES["file"]["type"] == "image/pjpeg"))
  5. && ($_FILES["file"]["size"] < 200000)) // max rozmiar pliku około 200kb
  6. {
  7. if ($_FILES["file"]["error"] > 0)
  8. {
  9. echo "Numer błędu: " . $_FILES["file"]["error"] . "<br />";
  10. }
  11. else
  12. {
  13. echo "Nazwa pliku: " . $_FILES["file"]["name"] . "<br />";
  14.  
  15. /*
  16. TUTAJ OKREŚLAMY ROZSZERZENIE PLIKU
  17. */
  18.  
  19. $rozszerzenie= end(explode(".", $_FILES["file"]["name"]));
  20.  
  21. /*
  22. ZMIENIAMY NAZWĘ PLIKU NA NOWĄ
  23. */
  24.  
  25. $new_name = date("Y-m-d_H-i-s");
  26. $new_name.=".".$rozszerzenie;
  27. $_FILES["file"]["name"] = $new_name;
  28.  
  29. echo "Rodzaj: " . $_FILES["file"]["type"] . "<br />";
  30. echo "Rozmiar: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
  31. echo "Plik tymczasowy: " . $_FILES["file"]["tmp_name"] . "<br />";
  32.  
  33. if (file_exists("$katalog" . $_FILES["file"]["name"]))
  34. {
  35. echo $_FILES["file"]["name"] . " już istnieje. <br>"; $ogloszenie_wazne = 0;
  36. }
  37. else
  38. {
  39. if (!(move_uploaded_file($_FILES["file"]["tmp_name"], "$katalog" . $_FILES["file"]["name"])))
  40. {
  41. echo "Nie można przenieść pliku!";
  42. $ogloszenie_wazne = 0;
  43. }
  44. else
  45. {
  46. echo "Plik zapisano w: " . "$katalog <br>" . $_FILES["file"]["name"];
  47. chmod($katalog."/".$_FILES['file']['name'], 755);
  48. }
  49.  
  50. }
  51. }
  52. }
  53. else
  54. {
  55. echo "<font color='red'> Plik jest niepoprawny.</font><br>"; $ogloszenie_wazne = 0;
  56. }


Powód przez które napisałem tu posta (a żeby nie było, wiele czasu szukałem na googlach i nie mogłem znaleźć odpowiedzi plus próbowałem innych skryptów):

Gdy plik zostanie wrzucony na serwer zgodnie ze skryptem pojawia się informacja:

Kod
Nazwa pliku: My_sma6.jpg
Rodzaj: image/jpeg
Rozmiar: 29.48828125 Kb
Plik tymczasowy: /tmp/phpCnQO2U
Stored in: upload/2010-08-31_14-22-57.jpg


Problem w tym, że w katalogu "upload" nie ma NIC.
Wcześniej za pomocą total commandera oczywiście wykonałem chmod 777 na tym katalogu.

Aaa właśnie. Pliki mają się uploadować na serwer OVH.pl ale na ich forum nie mogę też znaleźć odpowiedzi.

Z góry dziękuję za pomoc.
fander
Stored in: upload/2010-08-31_14-22-57.jpg

tego w skrypcie nie masz smile.gif

A i jeszcze zmień zmienną $katalog na ścieżkę bezwzględną na serwerze naprzykład: /www/htdocs/mojadomena/upload/

Powinno zadziałać.
unloco
Dzięki za pomoc. Ten problem pojawiał się tylko na serwerze OVH.pl
Gdy się przeniosłem na AZ.pl tego problemu w ogóle nie ma i działa wszystko ok smile.gif
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.