За последние 24 часа нас посетили 20058 программистов и 1695 роботов. Сейчас ищут 1892 программиста ...

Ajax Upload

Тема в разделе "JavaScript и AJAX", создана пользователем flash_uz, 14 авг 2011.

  1. flash_uz

    flash_uz Активный пользователь

    С нами с:
    12 ноя 2008
    Сообщения:
    21
    Симпатии:
    0
    Здравствуйте, уважаемые форумчане! Помогите пожалуйста со следующей проблемой. Делаю сайт доски объявлений, при добавлении объявления есть возможность загружать 10 фотографий товара. Для этого я использую библиотеку Ajax Upload (http://valums.com/ajax-upload/). Так вот проблема в следующем, как можно ограничить кол-во загружаемых файлов и как хранить файлы которые были загружены, то есть к примеру пользователь загрузил фотографии товара, но форму так и не отправил. Значит загруженные фотографии товара стали нам уже не нужными.
    Помогите пожалуйста!
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    flash_uz
    юзай swfupload - и будет тебе счастье =)
     
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    ограничивать количество наверное можно - это смотри описание плагина.
    а чистить невостребованный мусор можно по крону. если файлы не привязаны к конкретной позиции и старше X минут - удалять к хренам.
    конкретнее не скажу, т.к. никаких деталей реализации ты не засветил
     
  4. flash_uz

    flash_uz Активный пользователь

    С нами с:
    12 ноя 2008
    Сообщения:
    21
    Симпатии:
    0
    Да, скорее всего придется использовать swfupload.
     
  5. flash_uz

    flash_uz Активный пользователь

    С нами с:
    12 ноя 2008
    Сообщения:
    21
    Симпатии:
    0
    В описании так и не нашел про ограничение. Скорее всего буду использовать тогда swfupload.
    На сайте будет форма добавления объявления в которой будут поля описания товара, характеристик и возможность добавления фотографий товара. Фотографии товара будут храниться в отдельной таблице, потом данная таблица будет связываться с таблицей в которой будет описание товара. Мне не понятно, как хранить фотографии товара до того момента пока не будет отправленная форма и не пройдет валидность. Пожалуйста напишите более конкретнее, я постарался сейчас более конкретно описать свою проблему касательно временного хранения фотографий товара.
     
  6. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    Ну если я правильно понимаю расклад, в момент создания новой товарной позиции еще не существует id на который можно настроить связи в таблице картинок. Предположим мы записываем в это поле 0 — это будет признак, что данные файлы временные. На событие "файл загружен" вешаешь обработчик, где копишь id картинок. Можно это делать в hidden полях формы.
    HTML:
    1.  
    2. <item type="hidden" name="pics[]" value="13425" />
    3.  
    А сразу после сохранения формы тебе надо сделать UPDATE в таблице картинок типа
    [sql]
    UPDATE pictures SET item_id=:new_item_id WHERE id IN:)pic_ids)
    [/sql]
    как-то так

    Сборка мусора (по крону) должна удалять старые непривязанные записи (с item_id=0) у которых отметка времени загрузки более 24 часов назад.
     
  7. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    artoodetoo
    не. лучше юзать какойнить рандомный идентификатор,который присваивается объяве еще на стадии формы.

    мое такое мнение.
     
  8. flash_uz

    flash_uz Активный пользователь

    С нами с:
    12 ноя 2008
    Сообщения:
    21
    Симпатии:
    0
    Спасибо большое!
     
  9. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.114
    Симпатии:
    1.244
    Адрес:
    там-сям
    igordata, ну я для себя решил именно таким образом как написал. про случайный ид тоже думал, но тут возникают новые вопросы - он будет похож на реальный, а нам надо еще собирать мусор. к тому же случайные числа имеют тенденцию повторяться. здесь могут возникнуть непредвиденные коллизии. все тонко.
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    artoodetoo
    я б сделал отдельную таблицу в бд для черновиков. и усё =)

    но я еще сделаю сам когда на днях все то же самое (задача такая же стоит) - тогда может че еще умного скажу.
     
  11. rainarr

    rainarr Активный пользователь

    С нами с:
    20 ноя 2010
    Сообщения:
    276
    Симпатии:
    0
    ищу скрипт загрузки фотографий на jquery+что-то (без флеша) где есть сразу предпросмотр фото (после закачки). гугл уже копаю довольно долго, ничего норм найти не могу =(
    т.е. я знаю как с jquery отправить и _пост и _гет, а как именно _files посылать - хз
     
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    rainarr
    а есть суперпупер плагин который форму аяксом сабмитит =) вот заюзай его.

    еще его дружить с заблочкой тоже удобно

    код выглядит примерно так

    [js]$('#newmsg').submit(function() {
    $(this).ajaxSubmit({// pre-submit callback
    beforeSubmit: function () {
    $('#newmsg').block({
    message: '<img src="/images/loading.gif"> Подождите...'
    });
    return true;
    },
    success: function (data) {// post-submit callback
    $('#newmsg').unblock();
    }
    });
    return false;
    });[/js]