Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP] Upload wielu plików jednocześnie
bahh
post
Post #1





Grupa: Zarejestrowani
Postów: 261
Pomógł: 2
Dołączył: 13.05.2012

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


Mam taki skrypt, że możemy wgrywać kilka plików naraz. Działa to na zasadzie, że w JS mam kod, gdzie po przyciśnięciu "dodaj kolejny plik" pojawia się nowy input taki jak ten:
  1. <input type="file" name="plik[]" class="upload" />

a potem przesyłamy formularz. Problem pojawia się w kodzie PHP, widzi on tylko jeden plik, mimo że w tablicy powinno być np. 3 pliki - pętla wykonuje się tylko raz. Gdzie popełniam błąd?

Tutaj HTML:
  1. <script type="text/javascript">
  2. function dodaj_element(kontener){
  3. var znacznik = document.createElement(\'input\');
  4. znacznik.setAttribute(\'type\', \'file\');
  5. znacznik.setAttribute(\'name\', \'plik[]\');
  6. znacznik.className = \'upload\';
  7. var kontener = document.getElementById(kontener);
  8. kontener.appendChild(znacznik);
  9. }
  10. <form method="post" action="pliczek.php" enctype="multipart/form-data">
  11. <div id="pliki">
  12. <input type="file" name="plik[]" class="upload" />
  13. </div>
  14. <input type="button" value="Załącz kolejny plik" onclick="dodaj_element('pliki');" />
  15. <input type="submit" value="DODAJ" />
  16. </form>

A tutaj PHP:
  1. for ($i=0; $i<count($_FILES['plik']['size']); $i++)
  2. {
  3. if (is_uploaded_file($_FILES['plik']['tmp_name'][$i])) {
  4. if ($_FILES['plik']['size'][$i] > $max_size_file)
  5. $error = 'Rozmiar przesyłanego załącznika został przekroczony. Maksymalny dopuszczalny rozmiar załącznika wynosi '.$max_size_file/(1024*1024).' MB';
  6. elseif ($_FILES['plik']['type'][$i] == "text/plain")
  7. $error = 'Niedopuszczalny format załącznika';
  8. //TUTAJ JAKAS TAM CZESC KODU
  9. }
  10. }
  11. }

Go to the top of the page
+Quote Post

Posty w temacie


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: 20.09.2025 - 09:40