ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 03.03.2010, 09:35
fokinkostya
Новичок
Регистрация: 28.02.2010
Сообщений: 11
С нами: 8526831

Репутация: 0
По умолчанию

Я реализовывал подобную фишку на местном файлообменнике. За базу для мультиаплоада брался скрипт на JQ, называется UberUpload. Частично переписан, добавлены всякие украшательства. В принципе реализовать самый простой вариант не так сложно.

На стороне клиента будет трудится простенький скрипт JS, привязанный на кнопочку "добавить файл". На стороне сервера простенькая обработка на PHP. Если интересует, могу попозже накидать пример.
 
Ответить с цитированием

  #12  
Старый 03.03.2010, 10:23
Byte_
Участник форума
Регистрация: 07.09.2008
Сообщений: 139
С нами: 9302285

Репутация: 65
По умолчанию

fokinkostya, только на javascript? Без флеша? интересует!
 
Ответить с цитированием

  #13  
Старый 03.03.2010, 10:32
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами: 11278406

Репутация: 818


По умолчанию

Цитата:
Я имел ввиду скрипт, где средствами JS или AJAX реализована передача имен файлов.
http://valums.com/ajax-upload/
http://valums.com/wp-content/uploads/ajax-upload/demo-jquery.htm

http://ajaxuploader.com/Demo/select-multiple-files-upload.aspx

Последний раз редактировалось b3; 03.03.2010 в 10:36..
 
Ответить с цитированием

  #14  
Старый 03.03.2010, 11:09
Byte_
Участник форума
Регистрация: 07.09.2008
Сообщений: 139
С нами: 9302285

Репутация: 65
По умолчанию

b3, это не прикольно. с флеш аплодером можно добиться эффекта, когда пользователь выбирает сразу несколько файлов. вот это действительно удобно.
 
Ответить с цитированием

  #15  
Старый 03.03.2010, 13:20
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами: 11278406

Репутация: 818


По умолчанию

Byte_
а это чем не подходит?
http://ajaxuploader.com/Demo/select-multiple-files-upload.aspx
 
Ответить с цитированием

  #16  
Старый 03.03.2010, 19:51
fokinkostya
Новичок
Регистрация: 28.02.2010
Сообщений: 11
С нами: 8526831

Репутация: 0
По умолчанию

PHP код:
<?php
if(is_array($_FILES)){
    
$f_sel 0;
    while (list (
$key$value) = each ($_FILES)){
        if (
gettype($value) == 'array'){
            while (list (
$key_2$value_2) = each ($value)){
                
$files[$f_sel][$key_2] = $value_2;
            }
        }
        
$f_sel++;
    }
    @
reset($_FILES);
}
if (
count($files) == 1){
    if (
$files[0]['error'] == 0){        // Проверяем размер
        
echo $files[0]['tmp_name'].'<br />';
    }
}
// Если файлов несколько
elseif (count($files) > 1){
    
$count count($files);
    
// Обрабатываем файлы циклом
    
for ($sel 0$sel $count$sel++){        // Если файл залился без ошибок, обрабатываем
        
if ($files[$sel]['error'] == 0){
            echo 
$files[$sel]['tmp_name'].'<br />';
        }
    }
}


?>

<html>
<head>
  <title>Мульти загрузка</title>
</head>
<style type="text/css">

</style>
<script type="text/javascript">
function addFile() {
    var d = new Date();
    var span = newEl('span');
    span.id = d.getTime();
    span.style.display = 'block';
    var input = newEl('input');
    input.type = 'file';
    input.name = 'file'+d.getTime();
    span.appendChild(input);
    var div = getEl('multiUpload');
    div.appendChild(span);
}

function newEl (type) {
    return document.createElement(type);
}

function getEl (id) {
    return document.getElementById(id);
}
</script>

<body>
<input type="button" value="Add file" onClick="addFile();">
<form action="upload.php" method="post" enctype="multipart/form-data">
<div id="multiUpload" style="display: block;">
</div>
<div>
<input type="submit" value="Send">
</div>
</form>
<script type="text/javascript">addFile();</script>
</body>
</html>
Как то так... Накалякал за 10 минут.

Могу сделать под заказ.
 
Ответить с цитированием

  #17  
Старый 04.03.2010, 01:23
Светлый
Участник форума
Регистрация: 28.06.2007
Сообщений: 221
С нами: 9931820

Репутация: 135
По умолчанию

Цитата:
Сообщение от b3  
а это чем не подходит?
http://ajaxuploader.com/Demo/select-multiple-files-upload.aspx
И всю эту шоблу каждый раз по одному файлу лить?

fokinkostya, суть в том, что кол-во файлов обычно 1000+, имена генерятся рандомно. Поэтому к сожалению тоже не вариант(

Последний раз редактировалось Светлый; 04.03.2010 в 01:30..
 
Ответить с цитированием

  #18  
Старый 04.03.2010, 05:20
fokinkostya
Новичок
Регистрация: 28.02.2010
Сообщений: 11
С нами: 8526831

Репутация: 0
По умолчанию

Ну дык ты задачу опиши, может чего и придет в голову.
 
Ответить с цитированием

  #19  
Старый 04.03.2010, 06:34
Светлый
Участник форума
Регистрация: 28.06.2007
Сообщений: 221
С нами: 9931820

Репутация: 135
По умолчанию

В идеале - заливаем небольшой файлик на сервер, открываем его через веб, выбираем скопом всё что надо залить, льём. В принципе не так уж принципиально будет файл один или 2-3-4, или большого размера. Главное чтобы стабильно заливал, не вываливался по таймауту и пр.
Судя по всему разгадка в симбиозе php и flash
 
Ответить с цитированием

  #20  
Старый 04.03.2010, 08:27
fokinkostya
Новичок
Регистрация: 28.02.2010
Сообщений: 11
С нами: 8526831

Репутация: 0
По умолчанию

Цитата:
Судя по всему разгадка в симбиозе php и flash
Скорее всего.
Потому что я не слышал о возможности выбора нескольких файлов стандартными средствами.
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрипт для анализа лог файлов. null_access PHP 0 18.04.2006 02:20
Скрипт для массовой рассылки почты zerg Уязвимости Mail-сервис 4 09.03.2006 12:50



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.