Модераторы: 2man
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обалденно хитрый Upload, Помогите написать ситему... 
:(
    Опции темы
Xeim
  Дата 18.5.2006, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 17.11.2005

Репутация: нет
Всего: 0



Знаю, что тем про аплод было 5-15, но все же. Если существуют готовые аналоги, то тоже скажите о них ибо будут очень полезны. Хотя разобраться и переделать под себя не такую как надо систему будет сложно.

Мне нужен такой скрипт аплодер. Применяется в локалке, где у всех IP один и тот же. Пока производится аплод на сервер любых файлов в любом колличестве по одному и любого размера (ограничивает только конфиг файл пхп). Нужно чтобы.... Файлы закачивать было разрешено только определенных 5 типов. Это раз. А теперь самое интересное. Насчет размера и колличества фалов закачиваемых с одного IP. 
Такая идея  smile 
С одного IP можно сделать только один из следущих вариантов:
  • Закачать 1 файл не больше 1 мб на 10 суток. После истечения времени файл должен автоматически удаляться.
  • Закачать 1 файл не больше 10 мб на 1 сутки. После истечения времени файл должен автоматически удаляться.
  • Закачать 1 файл не больше 100 мб на 10 минут. После истечения времени файл должен автоматически удаляться.

Естественно после того, как срок истечет и файлы будут стерты, IP должен освободиться.

Помогите с изменением имеющегося, если писать с нуля будет не лучше этого.
Код

# В вашем "php.ini" должны быть следующие три параметра: 
# 
# file_uploads = On 
# 
# ^ включаем поддержку загружаемых файлов. 
# 
# upload_tmp_dir = ПОЛНЫЙ_ПУТЬ_ДО_ПАПКИ_ГДЕ_БУДУТ_ХРАНИТЬСЯ_ЗАГРУЖАЕМЫЕ(ВРЕМЕННЫЕ)_ФАЙЛЫ 
# 
# ^ Например: upload_tmp_dir = d:/server/php/uploads 
# 
# и 
# 
# upload_max_filesize = 2M 
# 
# ^ Максимальный размер загружаемых файлов (в нашем случаем 2 МБ). 

// Куда сохраним файл? 
// Давайте в папке с этим скриптом, 
// создадим папку "files", туда-то и будем 
// сохранять все загружаемые файлы. 

$path=GetCWD()."/files"; 

    // Проверяем на существование папку $path 

    if(!file_exists($path)) 
    die("<b>Пожалуйста, создайте папку <font color=red>".$path."</font> и <a href=?>повторите попытку загрузить файл</a>.</b>"); 

// Выводим форму для загрузки файла. 

if(empty($_FILES['UserFile']['tmp_name'])) 
echo 
"<form method=post enctype=multipart/form-data> 
Выберите файл: <input type=file name=UserFile> 
<input type=submit value=Отправить> 
</form>"; 

// Если файл не загружен по каким-то причинам, выводим ошибку. 

elseif(!is_uploaded_file($_FILES['UserFile']['tmp_name'])) 
die("<b><font color=red>Файл не был загружен! Попробуйте <a href=?>повторить попытку</a>!</font></b>"); 

// Если файл удачно загружён на сервер, делаем вот что... 

else 
{ 
    // Переносим загружённый файл в папку $path 

    if(@!copy($_FILES['UserFile']['tmp_name'],$path.chr(47).$_FILES['UserFile']['name'])) 

    // Если не удалось перенести файл, выводим ошибку: 

    die("<b><font color=red>Файл не был загружен! Попробуйте <a href=?>повторить попытку</a>!</font></b>"); 

    // Если всё Ok, то выводим инфо. о загружённом файле. 

    else 
    echo 
    "<center><b>Файл \"<font color=red>".$_FILES['UserFile']['name']."\"</font></a> успешно загружён на сервер!</font></b></center>". 
    "<hr>". 
    "Тип файла: <b>".$_FILES['UserFile']['type']."</b><br>". 
    "Размер файла: <b>".round($_FILES['UserFile']['size']/1024,2)." кб.</b>". 
    "<hr><center><a href=http://192.168.55.1/site/index.php?act=upload>Загрузить ещё один файл!</a></center>". 
    "<br>http://192.168.55.1/site/files/" .$_FILES['UserFile']['name'] ;
    //"<br><a href=http://192.168.55.1/site/files/" .$_FILES['UserFile']['name'] ">http://192.168.55.1/site/files/" .$_FILES['UserFile']['name']</a>;
} 

П.С. Скрипт от Malinx, я его редактировал немного, чтобы адрес загруженного файла выводился.

Заранее нескончаемое спасибо за ответы!!!
Помогите  smile   

Это сообщение отредактировал(а) Xeim - 18.5.2006, 18:17
PM MAIL   Вверх
Xeim
Дата 30.5.2006, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 186
Регистрация: 17.11.2005

Репутация: нет
Всего: 0



Что же мне делать? Помгать делать такую штуковину никто не станет. А если и станет, то себе идею заберет и не отпишется. Как мне научиться это делать?
Учебника по PHP достаточно? Или что еще нужно изучить? Ответьте... 
PM MAIL   Вверх
Opik
Дата 30.5.2006, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 7
Всего: 55



Xeim, 
Заности данные о загрузках в базу. и уже проверяй, можно что то качать или нет 
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Другие движки / фрейморки | Следующая тема »


 




[ Время генерации скрипта: 0.0418 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.