Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: upload plików, problem z firefoxem
Forum PHP.pl > Forum > PHP
seler
Napisałem prosty skrypt do uploadowania fotek w pliku zip, który wygląda tak:

  1. <?php
  2. if (isset($_FILES['file']) && is_uploaded_file($_FILES['file']['tmp_name']))
  3. {
  4. echo $_FILES['file']['error'];
  5. $file = $_FILES['file'];
  6. $zip = zip_open($file['tmp_name']);
  7. if ($zip)
  8. {
  9. while ($zip_entry = zip_read($zip))
  10. {
  11. if (zip_entry_open($zip, $zip_entry))
  12. {
  13. $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
  14. $path = "../images/tmp/" . zip_entry_name($zip_entry);
  15. $handle = fopen($path, "w");
  16. fwrite($handle, $buf);
  17. fclose($handle);
  18. }
  19. zip_entry_close($zip_entry);
  20. }
  21. zip_close($zip);
  22. }
  23. ?>


problem polega na tym, że firefox nie potrafi poradzić sobie z uploadem większego pliku (opera, czy msie, potrafią). Przy małym archiwum, wszystko idzie jak trzeba. Firefox wyświetla następujący komunikat: "skrypt na tej stronie może być zajęty,m lub przestał odpowiadać. Możesz przerwać skrypt teraz, lub kontynuować, by sprawdzić, czy jego wykonywanie się zakończy". Jeśli wybiorę "zakończ skrypt" - wczytywana jest właściwa strona (ta z action w formularzu), a właściwe pliki są przegrane do folderu. Poza tym, jeśli skrypt znajduje, się na serwerze (nie na localhoście) i dochodzi ewentualne skalowanie, głupieć zaczynają wszystkie przeglądarki - przy czym pliki przeskalowane bądź nie, znajdują się w odpowiednim katalogu. Czasami 1-2 gdzieś zginie :/ Wygląda jakby brakowało jakiejś funkcji w stylu flush...

Wszystkie parametry php.ini (post_max_size, max_upload, itd...)ustawione są z duuuużym zapasem, więc problem leży gdzie indziej. Z góry dzięki za odpowiedź.
pitbull82
Hmmm, nie wiem czy można na to coś poradzić. IMHO jest to zabezpieczenie Firefoxa przed skryptami, które się długo wykonują - głównie dla zabezpieczenia przed złośliwymi JavaScript na niektórych stronach, które np. w IE powodują zwis przeglądarki. Ja np. chociażby przy wgrywaniu większych baz za pomocą PhpMyAdmina też mam ten komunikat i niestety cierpliwie klikam KONTYNUUJ, aż się baza wgra...
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.