Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] - ładowanie pliku
przemysuaw
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.02.2013

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


Witam.

Mam problem z komunikatem o błędnym rozmiarze pliku.
Jak wysyłam plik mniejszy niż 20 MB to wszystko działa, ale jak próbuje wysłać plik większy niż 20 MB, to nic się nie dzieje. Nie ma żadnego komuniakatu o błędzie.
W php.ini mam ustawione na 20 MB: post_max_size, upload_max_filesize,

Co zrobić, by podczas próby załadowania pliku większego niż 20 MB wyskoczył komunikat o zbyt dużym pliku, a nie czyścił się formularz bez żadnego komentarza? (IMG:style_emoticons/default/smile.gif) .


  1. <?php # Skrypt formularz_kontaktowy.php
  2. require_once('../config.inc.php');
  3. require_once('../mysqli_connect.php');
  4. $max_rozmiar=20971520;
  5. if(isset($_POST['submitted'])) {
  6. //Sprawdzana załącznik
  7. if (is_uploaded_file($_FILES['zalacznik']['tmp_name'])){
  8. $rozmiar_zal=$_FILES['zalacznik']['size'];
  9. echo'Rozmiar pliku '.$rozmiar_zal;
  10. if ($rozmiar_zal > $max_rozmiar ) {
  11. $errors[]='Błąd! Maksymalny rozmiar załącznika może wynieść 20 MB';
  12. } else {
  13. //Tworzy tymczasową nazwę pliku
  14. $temp='../uploads/'.md5($_FILES['zalacznik']['name']);
  15. if(move_uploaded_file($_FILES['zalacznik']['tmp_name'],$temp)) {
  16. echo'<p> Plik został załadowany</p>';
  17. //zmienna $zal przechowuje nazwę obrazka
  18. $zal=$_FILES['zalacznik']['name'];
  19. } else {
  20. $errors[]='Nie udało się przenieść pliku.';
  21. $temp=$_FILES['zalacznik']['tmp_name'];
  22. }
  23. }// Koniec insrukcji z maksymalnym rozmiarem załącznika
  24. } else { //Nie załadowano pliku
  25. $temp=NULL;
  26. $errors[]='Nie załadowano pliku';
  27. }
  28. }//Kończy warunek wysyłania
  29.  
  30. ?>
  31. <form enctype="multipart/form-data" action="test.php" method="post">
  32. <input type="hidden" name="MAX_FILE_SIZE" value="20971520"/>
  33. <fieldset><legend>Załaduj plik</legend>
  34. <p><b>PLIK: </b> <input type="file" name="zalacznik"/></p>
  35. </fieldset>
  36. <div align="center"><input type="submit" name="submit" value="Załaduj" /></div>
  37. <input type="hidden" name="submitted" value="TRUE" />
  38. </form>
Go to the top of the page
+Quote Post
Michael2318
post
Post #2





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

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


Też miałem taki problem kiedyś. PHP jest w stanie sprawdzić stan pliku dopiero po tym jak go zauploadujesz. Takie coś lepiej sprawdzać od strony javascript/jquery i wypluwać błędy od razu po wybraniu przez użytkownika pliku.
Zobacz np. to: http://stackoverflow.com/questions/1601455...ize-with-jquery
Go to the top of the page
+Quote Post
przemysuaw
post
Post #3





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.02.2013

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


Domyślałem się, że będę musiał poznać w końcu javę i jquery, ale nie wiedziałem, że tak szybko (IMG:style_emoticons/default/smile.gif) .
Może jednak da się to jakoś zrobic za pomocą tylko php?
Go to the top of the page
+Quote Post
Michael2318
post
Post #4





Grupa: Zarejestrowani
Postów: 651
Pomógł: 116
Dołączył: 3.06.2012
Skąd: Lędziny

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


Raczej nie. Prosty przykład: http://speedyshare.com/
Wrzucasz coś i z automatu Ci wyskakuje ile to coś waży.
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: 23.08.2025 - 09:12