Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Upload pliku - proszę o pomoc gdzie jest błąd, Dlaczego nie działa?
unloco
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 13.04.2010

Ostrzeżenie: (0%)
-----


Próbuję uploadować plik na serwer. Może ktoś mi powiedzieć gdzie jest błąd przez który to nie działa? Z góry dziękuję.

plik: admin_gallery_edit.php

  1. echo "<form method=post action='admin_gallery_add_photos.php'>";
  2. echo "<table width='100%' align='center'>";
  3.  
  4. echo "<tr>";
  5.  
  6. echo "<td width='290' align='left'>Foto 1 (do 800kb, png/jpg/jpeg/gif)</td>";
  7. echo "<td width='433' align='left'>";
  8. echo "<input name='plik' type='file' size='40'>";
  9.  
  10. echo "</td>";
  11. echo "<input name='dodawanie_fot' type='hidden' size='50' value='prawda'>";
  12. echo "</tr>";
  13.  
  14. echo "</table>";
  15.  
  16. echo "<input type=submit value='Dodaj zdjęcia'>";
  17.  
  18. echo "</form>";


plik: admin_gallery_add_photos.php
  1. if ($_SESSION['logged_user'] != 'site_admin') // zmienić na RÓWNE 'site_admin' po napisaniu strony!
  2. {
  3.  
  4. // if ($dodawanie_fot == 'prawda')
  5.  
  6. // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! START: UPLOAD PLIKU NA SERWER !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  7.  
  8. if ((($_FILES["plik"]["type"] == "image/gif")
  9. || ($_FILES["plik"]["type"] == "image/jpeg")
  10. || ($_FILES["plik"]["type"] == "image/pjpeg"))
  11. && ($_FILES["plik"]["size"] < 307200 && $_FILES["plik"]["size"] > 6000)) // max rozmiar pliku 300kb
  12. {
  13. $plik_tmp = $_FILES["plik"]["tmp_name"]; echo "Nazwa pliku tymczasowego: ".$plik_tmp."<br>";
  14. $plik_nazwa = $_FILES["plik"]["name"]; echo "Nazwa pliku normalnego: ".$plik_nazwa."<br>";
  15. $plik_rozmiar = $_FILES["plik"]["size"]; echo "Rozmiar pliku: ".$plik_rozmiar."<br>";
  16.  
  17. if(is_uploaded_file($plik_tmp))
  18. {
  19. $rozszerzenie= end(explode(".", $_FILES["plik"]["name"]));
  20. $nowa_nazwa = rand(0,65536000);
  21. $nowa_nazwa = md5($nowa_nazwa);
  22. $nowa_nazwa.=".".$rozszerzenie;
  23.  
  24.  
  25.  
  26. $katalog = "galleries/$nowa_nazwa";
  27. move_uploaded_file($plik_tmp, "galleries/$nowa_nazwa");
  28. echo "Plik: <strong>$nowa_nazwa</strong> o rozmiarze
  29. <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
  30. echo "<img src='$katalog'>";
  31. }
  32. }
  33.  
  34. }



Wynik:
(IMG:http://img683.imageshack.us/img683/4213/errorii.jpg)

EDIT o 17:42

Dlaczego za pomocą total commandera nie widzę zawartości katalogu do którego został wgrany po uploadzie pliku skoro gdy już tego dokonam mogę wyświetlić jego zawartość za pomocą:
  1. $katalog = "galleries/$nowa_nazwa";
  2. echo "<img src='$katalog'>";


Czy to się wiąże z koniecznością ustawienia odpowiednich uprawnień pliku po jego wgraniu za pomocą kodu php?

Ten post edytował unloco 25.09.2010, 16:45:15
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Spawnm
post
Post #2





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Dodaj enctype="multipart/form-data" do <form >
Go to the top of the page
+Quote Post
unloco
post
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 13.04.2010

Ostrzeżenie: (0%)
-----


Działa. Wielkie dzięki. Taki szczególik ale zatrzymał mnie na cały dzień :|

Jeszcze jedno pytanie: Dlaczego używając total commandera nie widzę zawartości katalogu do którego są uploadowane pliki? Czy mam po przegraniu ich na docelowy katalog zmienić za pomocą php poleceniem chmod ich uprawnienia? Uprawnienia katalogu są na 755 a i przy zmianie ich na 777 też nie widzę.
Go to the top of the page
+Quote Post
kiler129
post
Post #4





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

Ostrzeżenie: (0%)
-----


Cytat(unloco @ 25.09.2010, 17:38:59 ) *
Działa. Wielkie dzięki. Taki szczególik ale zatrzymał mnie na cały dzień :|

Jeszcze jedno pytanie: Dlaczego używając total commandera nie widzę zawartości katalogu do którego są uploadowane pliki? Czy mam po przegraniu ich na docelowy katalog zmienić za pomocą php poleceniem chmod ich uprawnienia? Uprawnienia katalogu są na 755 a i przy zmianie ich na 777 też nie widzę.


TC ma cache katalogu, spróbuj odświeżyć katalog po wejściu - nie pamiętam klawiszologii (nie używam Windows`a) jednakże w FileZilla jest do tego guzik (w TC też powinien).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 2.10.2025 - 23:25