Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 25.06.2017
Сообщений: 68

Загрузка нескольких фото сразу

13.08.2018, 23:16. Показов 1543. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
PHP
1
2
3
4
5
6
<?php
 
$data = $_POST;
if (isset($data["setbutton"]))
        print_r($_FILES);
?>
HTML5
1
2
3
4
<form name="add_ad" action="/add_ads.php" method="post" enctype="multipart/form-data">
            <input type="file" name="photos" accept="image/*" value="" multiple="multiple"><br />
            <button type="submit" name="setbutton">Publish</button><br />
</form>
Вот такая форма обрабатывает запрос на добавление файлов. Я пытаюсь сделать так, чтобы за раз можно было загрузить несколько фото, но почему-то ничего не выходит. В массиве выводится лишь первая из них. При добавлении поля с max_size до input'a выводит ошибку. Оригинальный код, куда это будет встраиваться выложу ниже.

То, что нужно реализовать закоментировано # |TO REALIZE|
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
    require "db.php";
    
    if(isset($_SESSION['logged_user'])) {
 
        $data = $_POST;
        if (isset($data["setbutton"])) {
            $errors = array();
            if(trim($data['type_selection']) == '')
                $errors[] = "Выберите, что вы продаете/сдаете";
            if(trim($data['selection_sell_or_arend']) == '')
                $errors[] = "Выберите: продаете или сдаете";
            if(trim($data['description']) == '')
                $errors[] = "Опишите ваш товар";
            if(trim($data['price']) == '')
                $errors[] = "Введите цену";
            if(trim($data['adress']) == '')
                $errors[] = "Введите адрес";
            if($data['price'] < 5000)
                $errors[] = "Неверная цена";
            # |TO REALIZE| Проверка на то, что загружено не менее 4 фото и общий вес не более 40 мб
 
            if( R::count('ads', 'description = ?', array($data['description'])) > 0) {
                $errors[] = "Это объявление уже найдено в базе данных!";
            }
 
 
            if(empty($errors)) {
                $ad = R::dispense('ads');
                $ad->type_of_property = $data['type_selection'];
                $ad->selection_sell_or_arend = $data['selection_sell_or_arend'];
                $ad->description = $data['description'];
                $ad->price = $data['price'];
                $ad->adress = $data['adress'];
                # |TO REALIZE| добавление фотки в папку с id строки в таблице
                R::store($ad);
 
                echo '<div style="color: #04ff43">'."Ваше объявление было помещено в базу данных".'</div>';
                echo "<hr />";
            }
 
            else {
                echo '<div style="color:red">'.array_shift($errors).'</div>';
                echo "<hr />";
            }
        }
    }
    else {
        header ('Location: /auth.php');
    }
?>
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<html>
 
<head>
    <title>Add Ad</title>
    <link type="text/css" rel="stylesheet" href="/styles/style_add_ads.css" />
</head>
 
<body>
 
    <div class="container_add_ad">
 
        <form name="add_ad" action="/add_ads.php" method="post" enctype="multipart/form-data">
 
            <select name="type_selection">
                <option value="" disabled selected>Что вы продаете/сдаете</option>
                <option value="" disabled>mənzil</option>
                <option value="yeni tikili">—yeni tikili</option>
                <option value="köhnə tikili">—köhnə tikili</option>
                <option value="ev">ev</option>
                <option value="bağ">bağ</option>
                <option value="ofis">ofis</option>
                <option value="qaraj">qaraj</option>
                <option value="torpağ">torpağ</option>
                <option value="obyekt">obyekt</option>
            </select><br />
 
            <select name="selection_sell_or_arend">
                <option value="" disabled selected>Выберите...</option>
                <option value="satılır">satılır</option>
                <option value="kirayə verinilir">kirayə verinilir</option>
            </select><br />
 
            <textarea name="description" placeholder="Описание (макс. 1000 символов)" maxlength="1000" ></textarea><br />
            <input type="number" name="price" placeholder="qiymət azn"><br />
            <input type="text" name="adress" placeholder="ünvan"><br />
            <input type="file" name="photos" accept="image/*" value="" multiple="multiple"><br /><br />
            <button type="submit" name="setbutton">Publish</button><br /><br />
            <a href="/index.php">Перейти на главную</a>
        </form>
 
    </div>
 
</body>
 
</html>
Добавлено через 2 минуты
Используется redbeanphp для доступа к базе данных и работы с ней

Добавлено через 2 минуты
Функционал должен быть как тут https://bina.az/items/new
Кнопка Şəkil əlavə etmək внизу страницы

Добавлено через 33 секунды
https://ru.bina.az/items/new
Добавить фото
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.08.2018, 23:16
Ответы с готовыми решениями:

Загрузка фото
Добрый вечеря делаю ресайз изображений при помощи класса. Дело в том что там используются функции из GD и я так понял из-за этого сильно...

Загрузка фото VK API
Пытаюсь загрузить фото в альбом с помощью VK API. Загрузка фотографий на сервер ВКонтакте от имени пользователя осуществляется приложением...

Загрузка фото на сайт
Подскажите пожалуйста, как сделать загрузку юзерами фото на сайт?

1
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
14.08.2018, 14:26
Лучший ответ Сообщение было отмечено Мураша как решение

Решение

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?PHP 
if(isset($_POST['sub'])) {
    
    
 
    
foreach($_FILES['abc']['name'] as $photo) {
 
    
    
    
echo $photo;
    
}
}
 
?>

HTML5
1
2
3
4
5
6
<form enctype="multipart/form-data" action="" method="POST">
 
 
 <input name="abc[]" type="file" multiple />
    <input type="submit"  name='sub' value="Отправить файл" />
</form>
Добавлено через 46 секунд
Цитата Сообщение от Мураша Посмотреть сообщение
<input type="file" name="photos" accep
photos[]
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.08.2018, 14:26
Помогаю со студенческими работами здесь

Загрузка фото на сервер
данные код позволяет загрузить txt файлы , но не jpg. в чем может быть причина ? if(!empty($_FILES)){ $path = 'uploads/'; //...

Безопасная загрузка фото
Подскажите пожалуйста, безопасен и актуален ли данный код (загрузка фото): if(isset($_FILES)){ $path_images = 'images';//папка,...

Парсер сразу нескольких сайтов
Нужно спарсить 3 сайта http://www.openmark.ru/shop/CID_9_ALL.html http://intex-online.ru/?s=categories&amp;category=8 ...

Загрузка фото для фотогалереи
Как изменить код загрузки фото таким образом чтобы загружаемые скопом файлы поучали нумерацию: &quot;1&quot;, &quot;2&quot;, &quot;3&quot;,...

Обновление сразу нескольких строк таблицы
Здраствуйте. Помогите пож-та сделать изменения сразу нескольких строк таблицы mysql. Вот код вывода данных для изменения: if ( isset...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru