За последние 24 часа нас посетили 20285 программистов и 1692 робота. Сейчас ищут 1732 программиста ...

[Скрипт] Файлообменник (Самописный, Веб)

Тема в разделе "Прочее", создана пользователем Golodnyi, 11 окт 2013.

  1. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Скрипт файлообменника
    1) генерирует короткие ссылки на файлы (/a, /Z, /a1, /Z9 )
    2) при загрузке изображений имеет превью перед скачиванием
    3) возможность поставить пароль или описание к файлу.
    4) файлы можно загружать без регистрации пользователя, файлы таких пользователей удаляются автоматически через 31 день (число дней меняется в конфиге, так же меняется размер максимального файла).
    5) Регистрация, зарегистрированный пользователь может просматривать список своих файлов (их файлы автоматически не удаляются), при желании может удалить любой свой файл, пополнение баланса для расширение места и дискового просмтранства
    6) система рефералов, спроектированная по БД и учитывается при регистрации
    7) зареганный пользователь может сменить пароль при необходимости.
    8) администратор может удалять файлы
    9) раздел новостей сервиса
    10) статистика ежедневных скачиваний и всего скачиваний
    11) мобильная версия
    12) зарегистрированный пользователь имеет квоту (1гб) и макс. размер загружаемого файла (200мб), все размеры меняются индивидуально для каждого, в бд (платформа для доната)
    13) весь необходимый контроль ошибок (не превышение своих лимитов, лимитов сервера post_max_size, memory_max_size итд, ошибок в процессе загрузки файла)
    14) антивирусная проверка файлов (только для вдс и серверов)

    Пример скрипта на http://golodnyi.ru

    Технические требования
    PHP 5.3, MySQL, .htaccess, chmod
    Автор: Я
    Цена: 1000 руб.
    Дополнительная информация: скрипт написан на CodeIgniter с применением Smarty (все функции моделей детектятся в phpStorm)
    Контакты ICQ: 292496, E-mail: ochen@golodnyi.ru
     
  2. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.119
    Симпатии:
    1.245
    Адрес:
    там-сям
    Позволяет ли скрипт заливать очень большие файлы? То есть большие чем размер доступной оперативки?
    При скачивании есть докачивание?
     
  3. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    viewtopic.php?p=375668#p375668
     
  4. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    1) Алгоритмы выдачи файла кусками отсутсвуют, поэтому скорее нет.
    2) Докачивание поддержкой сервера, ты же не предлагаешь писать в сессию прогресс загрузки для каждого пользователя? Если хороший хостинг, то докачка будет

    Твои требования тянуть чуть больше чем на 1т.р; Учитывай стоимость)
     
  5. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.119
    Симпатии:
    1.245
    Адрес:
    там-сям
    я ничего не предлагаю и не делаю никаких предположений.
    ты выставил товар, а я уточняю его качества чтобы не додумывать.
     
  6. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Все качества в описании
     
  7. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Голодный сори, я очень любоппытный

    Что это ты знаешь?:)

    Добавлено спустя 3 минуты 57 секунд:
    А нафига? В Codeigniter есть свой родной шаблонизатор, зачем смарти?
    Codeigniter подает последние признаки жизни, его перепродают друг другу компании, так что дальнейшая его судьба для меня загадка(((
     
  8. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово

    Ну да, кавычка проскачила, бывает :), вроде раньше CI всегда эскейпил всё что через AD в бд идет, странно...

    CI может и умирает, мне не важно, он удобный, смарти нужен потому что мой phpstrom не понимает CI, зато понимает смарти, вообще это был эксперемент, обычно так не практикую, хотя эксперемент показал хороший результат, но сильно геморойный на начальном этапе создания.
     
  9. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Кстати уязвимости исправил, заодно поправил проблемы с доступом к БД, они правда были из за моего бесплатного хоста, который не разрешал больше 3-х одновременных запросов, но я чутка оптимизировал, ну и авторизация раньше слетала, теперь это дело тоже стабильнее, держится долго.
     
  10. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Добавлена мобильная версия сайта
     
  11. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    расскажи подробнее пожалуйста
     
  12. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    в книжках почитай
     
  13. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.119
    Симпатии:
    1.245
    Адрес:
    там-сям
    злой потому что голодный. а голодный потому что злой.
     
  14. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Я правда нигде не встречал про "одновременные запросы" =(
    зачем так хамить?
     
  15. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Я имел ввиду 3 одновременных подключения, опечатался, хотя лимиты на количество запросов в отрезок времени тоже есть, есть даже лимиты на количество выбранных данных за 1 запрос, мне кажется что последний лимит это в ущерб хостингу только, вместо 1-го качественного запроса пользователи пишут запросы в циклах, насилуя бд в разы сильнее.

    Добавлено спустя 2 минуты 19 секунд:
    а голодный потому что скрипты не покупают =), я его уже там модифицировал, разные топы пользователей и файлов, понятия не имею зачем файлообменнику такое, но у многих есть, решил тоже сделать
     
  16. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Зачем? У тебя 3 разных баз используется?

    И какой лимит? Я знаю только на память...

    Раз твой скрипт никто не покупает может покажешь исходники... мне стало интересно что ты называешь качественный запрос:)
     
  17. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    в файлообменнике нету сложных отчетов, поэтому и запросов больших там не может быть, самый крупный запрос в скрипте это
    Код (Text):
    1.  
    2.    SELECT * , SUM( file.downloaded ) AS total_downloaded, count(file.downloaded) as total_count
    3.        FROM fileup_model_user AS user
    4.        LEFT JOIN fileup_model_file AS file ON file.user_id = user.user_id
    5.    GROUP BY user.user_id
    6.    ORDER BY total_downloaded DESC
    7.    LIMIT 20
    :D
    самый большой запрос в моей практике это http://dumpz.org/300708/

    Код не покажу :b, покупайте, увидите)
     
  18. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    кто купит твоё поделие, если ты хамишь на простые вопросы?

    Добавлено спустя 48 секунд:
    и самый глупый наверное...
     
  19. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    я не хамил, я дал совет почитать книжек ;)
     
  20. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    нет. совет почитать книжек в данном случае это чистое хамство. раз.
    два - вопрос остается открытым, зачем вам три соединения?
    три. ты вышел со своим поделием к людям. люди задают вопросы. не будешь отвечать - не будут покупать. кому нужен кот в мешке.
     
  21. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Все просто, если не закрывать соединение после запроса, то соединение будет еще висеть, пока БД сама его не закрое (конфиг БД), я отказался от этого и теперь закрываю ненужные соединения, в результате запросов - зомби уже нет.


    Сейчас сделал хорошую фичу:
    Максимальный размер файла для загрузки различается для гостей и для пользователей, для гостей он задается в конфиге сайта, а для пользователей в БД, в таблице пользователя (тоесть можно увеличивать конкретному пользователю).

    Далее для пользователей создал КВОТУ на загрузку файлов, сейчас она 1гб, так же можно её расширить.

    Другими словами появилась платформа для доната, пользователи смогут расширять макс размер загружаемого файла и макс размер хранилища, сам донат пока не реализован.

    Функционал скрипт возрастает, цена пока остается прежней, потом конечно подниму, когда реализую донат и вашу плюшку про процесс загрузки файла.
     
  22. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    о,да

    Добавлено спустя 1 минуту 30 секунд:
    вас это пугает? чем вы пользуетесь для подключения к бд? PDO, mysqli, функции?
     
  23. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    меня это не пугает, для меня это просто стало проблемой, потому что у меня бесплатный хостинг, на нем много ограничений, а мне нужна платформа для тестирования, я просто подстроился под бесплатный хостинг, чтоб не платить, всё просто, да и висячие запросы никому не нужны, их отключение только в плюс скрипту
     
  24. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.119
    Симпатии:
    1.245
    Адрес:
    там-сям
    речь видимо о mysql persistent connection
    http://goo.gl/tNz9l9 (наябываю здешний парсер)
    эта штука неприятна еще и тем, что в каких-то случаях транзакция тоже остается открытой. фуфуфу!
     
  25. Golodnyi

    Golodnyi Новичок

    С нами с:
    11 окт 2013
    Сообщения:
    63
    Симпатии:
    0
    Адрес:
    Кемерово
    Не только pconnect опасен, pconnect держит соединение пока другая сторона напрямую его не закроет, а обычное соединение держит коннект пока таймаут из конфига не сработает