Помощник
|
Добавление изображений в папку |
pashek123
|
Сообщение
#1
|
||
|
|
||
|
|||
Degradator |
12.9.2014, 15:35;
Ответить: Degradator
Сообщение
#2
|
|
<input type="file" name="filename[]">
<input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> |
|
|
pashek123
|
Сообщение
#3
|
|
<input type="file" name="filename[]"> Это какой-то топорный метод!<input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> Добавил в index.html атрибут multiple, это позволит выделять множество файлов в окне <html><head> <title>Загрузка файлов на сервер</title></head><body> <h2><p><b> Форма для загрузки файлов </b></p></h2> <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="filename" multiple> <input type="submit" value="Загрузить"> </form></body> </html> Как на сервере обрабатывать больший массив? как модернизировать код в undo.php |
|
|
Wins |
15.9.2014, 10:39;
Ответить: Wins
Сообщение
#4
|
|
Как на сервере обрабатывать больший массив? как модернизировать код в undo.php Через foreach [PHP] if( $_SERVER['REQUEST_METHOD'] == 'POST' ) { if (isset($_POST['submit'])){ //Загрузка файлов на сервер. $directory = 'директория'; //Путь к директории для загрузки картинок $allowed_types = array('jpg','jpeg','png','gif','PNG','GIF','JPG','JPEG'); // Массив допустимых типов // Проверяем, существует ли директория для загрузки if(file_exists($directory)) { foreach($_FILES['file']['tmp_name'] as $key=>$filenames) { // Был ли загружен файл if(is_uploaded_file($_FILES['file']['tmp_name'][$key]) && ($count = count($key) > 0) ) { $filename = basename($_FILES['file']['name'][$key]); //Имя файла $file = "".time()."".$filename; // Новое имя файла $src = $_FILES['file']['tmp_name'][$key]; //Источник $target = $directory.$file; //Путь для загрузки $type = explode(".", $filename); //Получаем тип файла обращаясь к ключу $type[1] // Проверяем соответствия расширения загруженного файла допустимым if(in_array($type[1], $allowed_types)) { move_uploaded_file($src,$target);//Загружаем изображение } else {echo'Ошибка! Недопустимый формат!';} } else {echo'Ошибка! Файл не загружен!';} } } } } [/PHP] |
|
|
pashek123
|
Сообщение
#5
|
|
Может я неверно путь указываю? Не добавляются, даже по одной.
<html><head> <title>Загрузка файлов на сервер</title></head><body> <h2><p><b> Форма для загрузки файлов </b></p></h2> <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="filename" multiple> <input type="submit" value="Загрузить"> </form></body> </html> [PHP]<?php if( $_SERVER['REQUEST_METHOD'] == 'POST' ) { if (isset($_POST['submit'])){ //Загрузка файлов на сервер. $directory = '../add/'; //Путь к директории для загрузки картинок $allowed_types = array('jpg','jpeg','png','gif','PNG','GIF','JPG','JPEG'); // Массив допустимых типов // Проверяем, существует ли директория для загрузки if(file_exists($directory)) { foreach($_FILES['file']['tmp_name'] as $key=>$filenames) { // Был ли загружен файл if(is_uploaded_file($_FILES['file']['tmp_name'][$key]) && ($count = count($key) > 0) ) { $filename = basename($_FILES['file']['name'][$key]); //Имя файла $file = "".time()."".$filename; // Новое имя файла $src = $_FILES['file']['tmp_name'][$key]; //Источник $target = $directory.$file; //Путь для загрузки $type = explode(".", $filename); //Получаем тип файла обращаясь к ключу $type[1] // Проверяем соответствия расширения загруженного файла допустимым if(in_array($type[1], $allowed_types)) { move_uploaded_file($src,$target);//Загружаем изображение } else {echo'Ошибка! Недопустимый формат!';} } else {echo'Ошибка! Файл не загружен!';} } } } } ?>[/PHP] |
|
|
Wins |
15.9.2014, 16:42;
Ответить: Wins
Сообщение
#6
|
|
[PHP]$directory = '../add/'; //Путь к директории для загрузки картинок[/PHP]
путь нужно полностью указывать типа [PHP]$directory = '/home/сайт.ru/www/add/';[/PHP] посмотрите через $_SERVER['DOCUMENT_ROOT'] |
|
|
pashek123
|
Сообщение
#7
|
|
Нет, точно не полностью, ведь мы в папку сервера сохраняем и через сервер все это открываем, вот как было в самом верхнем примере
[PHP] ... move_uploaded_file($_FILES["filename"]["tmp_name"], "Здесь директория но она пустая, это означает, что файл сохранится в корневую директорию? где находятся два файла index и unload".$_FILES["filename"]["name"]); ... [/PHP] |
|
|
Wins |
16.9.2014, 11:53;
Ответить: Wins
Сообщение
#8
|
|
Нужно массив передавать как вам Degradator написал name="filename[]"
у вас сейчас просто name="filename" где находятся файлы index и upload, тут ни причем путь должен быть абсолютным |
|
|
Wins |
16.9.2014, 12:00;
Ответить: Wins
Сообщение
#9
|
|
У себя только что проверил, все работает
как с <input type="file" name="filename[]"> <input type="file" name="filename[]"> <input type="file" name="filename[]"> так и через <input name="file[]" type="file" multiple> кстати в пхп $_FILES['file']['tmp_name'] , везде указано file а вы передаете filename, <input type="file" name="filename" multiple> нужно <input type="file" name="file[]" multiple> |
|
|
pashek123
|
Сообщение
#10
|
|
нужно <input type="file" name="file[]" multiple> Исправил Путь к расположению папки C:\OpenServer\domains\add Как я попробовал: [PHP] ... $directory = 'C:/OpenServer/domains/add'; $directory = 'C:/OpenServer/domains/add/'; $directory = '../domains/add'; $directory = '../add'; ... [/PHP] |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Продается сайт фотосток ИИ изображений Хороший вариант! |
20 | alexey | 3279 | 25.6.2023, 15:28 автор: alexey |
|
Корректность показа вёрстки изображений на разных гаджетах Не сохраняются пропорции изображений на смартфонах |
1 | master-vek | 37258 | 25.3.2021, 13:22 автор: tedder |
|
Добавление RSS-ленты на новостные агрегаторы и блоги | 4 | agency | 4848 | 14.5.2020, 15:53 автор: agency |
|
Личный фотосток, много бесплатных изображений | 15 | Ultrastalker | 5980 | 30.3.2020, 10:15 автор: Ultrastalker |
|
Продам 120 изображений с фотостока DepositPhotos Выгодное предложение |
6 | Морфин | 1790 | 20.1.2020, 20:36 автор: Морфин |
Текстовая версия | Сейчас: 24.4.2024, 17:48 |