Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Мульти-загрузчик фото (https://forum.antichat.xyz/showthread.php?t=133738)

geforse 08.08.2009 18:04

Мульти-загрузчик фото
 
Прошу помощи )

Помогите найти мульти загрузчик изображений на сервер (технология впринципе не важна, главное результат)

Гугл выдал один а ajax, но что-то он мне не понравился)

кто чем пользуется на своих сайтах ?

geforse 08.08.2009 18:45

спасибо попробую

Цитата:

Сообщение от FireFenix
Форма с кнопкой JS, при нажатии добавляет поле input tupe="file"

я JS вобще не знаю) этот шаг можно в виде кода ?)

Kaimi 08.08.2009 18:56

Вроде того
PHP код:

<script>
function 
add()
    {
     var 
form document.getElementById('list');
     
form.innerHTML += '<input type="file"><br>';
    }
</
script>

<
form method="post">
<
div id="list">
    <
input type="file"><br>
</
div>
<
input type="button" value="Add" onclick="javascript:add()">
<
input type="submit" value="OK">
</
form


FireFenix 08.08.2009 19:48

PHP код:

<script language='javascript'>

function Add_File(a,b)
{
  var files = document.getElementById('files');
  var file = document.createElement('input');
  var line = document.createElement('br');
  
  file.setAttribute('type', 'file');
  file.setAttribute('name', 'file[]');

  files.appendChild(line);
  files.appendChild(file);
}

</script>

<form enctype="multipart/form-data" name="upload" method="post" action="?">
  Files: <a href="javascript:Add_File();">Добавить файл</a>
  <br>
  <br>
  <div id="files">
    <input type="file" name="file[]">
  </div>
  <br>
  <input type="submit" value="Отправить">
</form>

<?php

if (isset($_FILES['file']))
{
  
print_r($_FILES);
}

?>

В итоге к нам приходит в массиве $_FILE['file'] что-то типа :
Код:

Array
(
    [file] => Array
        (
            [name] => Array
                (
                    [0] => File1.xls
                    [1] => File2.CTF
                    [2] => File3.txt
                )

            [type] => Array
                (
                    [0] => application/vnd.ms-excel
                    [1] => application/octet-stream
                    [2] => text/plain
                )

            [tmp_name] => Array
                (
                    [0] => C:\Temp\php\php7027.tmp
                    [1] => C:\Temp\php\php7047.tmp
                    [2] => C:\Temp\php\php7113.tmp
                )

            [error] => Array
                (
                    [0] => 0
                    [1] => 0
                    [2] => 0
                )

            [size] => Array
                (
                    [0] => 388608
                    [1] => 5613444
                    [2] => 221
                )

        )

)

После проверки на size > 0 и error == 0 и расширения или типа файла - делаем move_upload_file и присваиваем имя

geforse 09.08.2009 11:09

всем спасибо :)

Написал "рабочий" код, который загружает почему-то не больше 5 картинок за раз

PHP код:

$files_count sizeof($_FILES['file']['name']);
  
for (
$i 0$i $files_count$i++) {...} 

Этот код загружает только 5 картинок :(

Наврятли ведь массив $_FILES['file']['name'] ограничен пятью "слотами" или я не прав ?

geforse 09.08.2009 11:31

нет, точно не из-за этого
; Maximum allowed size for uploaded files.
upload_max_filesize = 100M

geforse 09.08.2009 11:57

может кому-то поможет)

; Maximum allowed size for uploaded files.
upload_max_filesize = 99M



; Maximum size of POST data that PHP will accept.
post_max_size = 100M


всё заработало :)

bendep 15.08.2009 04:57

Еще можно JQ применить получается довольно интересная штука.

Naydav 15.08.2009 09:19

Цитата:

Сообщение от geforse
Прошу помощи )

Помогите найти мульти загрузчик изображений на сервер (технология впринципе не важна, главное результат)

Гугл выдал один а ajax, но что-то он мне не понравился)

кто чем пользуется на своих сайтах ?

Очень неплох
demo.swfupload.org/v220/multiinstancedemo/index.php

Симпатичный, удобный простой в установке
Вот только, для 10 версии флеш, несовместим с 9
Использую очень долго, не жулуюсь, правдв иногда проглючивает старт загрузки(нужно несколько раз нажать кнопку загрузить), но редко


Время: 15:51