Я сделал простой загрузчик файлов на PHP, где пользователь может загрузить несколько картинок. Затем сценарий помещает эти изображения в каталог с именем «uploads». Другой сценарий создает галерею со всеми изображениями из «uploads», поэтому каждый раз, когда пользователь загружает новое изображение, файл добавляется в галерею.
Он работает нормально — но только когда я использую его на своем компьютере. Когда я пробую это на iPad / iPhone, загруженные изображения имеют размер файла 0 байт, и вы также не можете видеть их в галерее.
Вот мой код:
Форма:
<form action="fupload.php" method="post" enctype="multipart/form-data">
<div class="upload-btn">
<label class="fileContainer">
Choose Pictures
<input name="datei[]" type="file" accept="image/*;capture=camera"multiple />
</label>
<br /><input id="file" type="submit" value="Upload"></input>
</div>
</form>
Добавил:
<?php
// Maximale Größe der Datei (Byte)
$maxSize = 20971520;
// Hilfsvariable für Array Index
$i = 0;
foreach($_FILES as $file):
foreach($file['name'] as $filename):
if($file['size'][$i] > $maxSize) {
echo "<h2 class='err_message'>Dein Bild ist leider zu groß</h2>";
++$i;
continue;
}
// Eindeutiger Dateiname
$save_as_name = uniqid().'_'.$filename;
// Datei auf Server speichern
move_uploaded_file($file['tmp_name'][$i], 'uploads/'.$save_as_name);
++$i;
endforeach;
endforeach;
echo "<img src='img/ok.svg' class='okay' /><h2 class='message'>Deine Bilder wurden erfolgreich hochgeladen</h2>";
echo $_FILES;
?>
Галерея:
<?php
$ordner = "uploads";
$allebilder = scandir($ordner); // Sortierung A-Z
foreach ($allebilder as $bild) {
// Zusammentragen der Dateiinfo
$bildinfo = pathinfo($ordner."/".$bild);
// Größe ermitteln für Ausgabe
$size = ceil(filesize($ordner."/".$bild)/20971520);
//1024 = kb | 1048576 = MB | 1073741824 = GB
if ($bild != "." && $bild != ".." && $bild != "_notes" && $bildinfo['basename'] != "Thumbs.db") {
?>
<div class="img">
<a href="<?php echo $bildinfo['dirname']."/".$bildinfo['basename'];?>">
<img src="<?php echo $bildinfo['dirname']."/".$bildinfo['basename'];?>" width="300" title="Thumbnail" />
</a>
</div>
<?php
}
}
?>
Интересно, кто-нибудь может мне помочь?
Задача ещё не решена.
Других решений пока нет …