Stworzyłem bardzo prosty przykład formularza przesyłania wielu plików (reference), działa on idealnie na komputerach stacjonarnych, ale nie na urządzeniach mobilnych, przynajmniej tych, z którymi testuję.Podstawowe przesyłanie wielu plików nie działa na urządzeniach mobilnych
Na Mobile (Xiaomi MI4 [Android w wersji 6.1] - Google Chrome/Mozilla Firefox): Po kliknięciu na Wybierz pliki widzę taki ekran:
Jeśli wybiorę Zdjęcia Google i wybierz wielokrotność pliki, tylko pierwszy plik zostanie wstawiony do formularza. Jeśli wybiorę galerii (native) aplikację i wybrać wiele plików uzyskać prawidłowy numer w formularzu, ale gdy klikam wysyłania pojawia się ekran „Kurza twarz”:
Każdy pomysł dlaczego tak jest wydarzenie?
Oprócz Zdjęć Google i natywnej aplikacji próbowałem 5 różnych aplikacji, ostatni, Piktures faktycznie zadziałał!
Proszę mi powiedzieć, że to nie jest aplikacja ... czy istnieje sposób na poprawne pobranie plików?
kod dołączony:
<form method="post" enctype="multipart/form-data">
<input type="file" name="my_file[]" multiple>
<input type="submit" value="Upload">
</form>
<?php
if (isset($_FILES['my_file'])) {
$myFile = $_FILES['my_file'];
$fileCount = count($myFile["name"]);
for ($i = 0; $i < $fileCount; $i++) {
?>
<p>File #<?= $i+1 ?>:</p>
<p>
Name: <?= $myFile["name"][$i] ?><br>
Temporary file: <?= $myFile["tmp_name"][$i] ?><br>
Type: <?= $myFile["type"][$i] ?><br>
Size: <?= $myFile["size"][$i] ?><br>
Error: <?= $myFile["error"][$i] ?><br>
</p>
<?php
}
}
?>
Jeśli chcesz testu: http://odedta.com/projects/jqueryfileupload/
Dzięki!
Jak stanu wynikowego, że przeglądarka jest teraz z pamięci może mieć wiele scenariuszy, które mogą powodować ten problem, 1. Pliki, które próbujesz przesłać, są zbyt duże, 2. Czy manipulujesz plikami przy użyciu api javascript? –
@TouqeerShafi Hej, 1. Pliki mają rozmiar około 80 KB i próbuję 2-3 na raz. 2. W aplikacji, z której korzystam, używam DropzoneJS, ponieważ nie mogłem odgadnąć, co jest nie tak, stworzyłem ten najprostszy przykład, aby wyeliminować zewnętrzne problemy z klasą lub JS, to jest czysty PHP/HTML i ten błąd jest ciągle się dzieje ... Miałem nadzieję, że być może istnieje rozwiązanie JS tam, gdzie jest kompensacja tego błędu ... podobne do klas JS datepickerów, które zwiększają funkcjonalność oryginalnego 'input [type =" date "]' – odedta
Jaka wersja Android i Google Chrome? Sprawdziłeś inną przeglądarkę mobilną lub natywną? – Fortran