Как да сглобя тази система

Pupe64etoo_92

Registered
Имам една система код за ъплоад на фаилове към сайта ми но искам да я абгрейдна ето го кода на системката.
Код:
<?php
define("MAX_FILES", 5); // колко файла максимално да може да се качват
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>*CS-XIPNOZA*BG* Kачване на файлове</title>

<script type="text/javascript">
function add_input(count_input) // функция за създаване на повече полета за качване на файлове
{
if (count_input <= <?php echo MAX_FILES; ?>) // проверяваме дали сме достигнали максималния брой полета
{
document.getElementById("inputs").innerHTML += 'Файл '+count_input+':<input type="file" name="file[]" /><br />'; // добавяме ново поле към дива "inputs"
count_input += 1; // увеличаваме бройката им с 1
if (count_input <= <?php echo MAX_FILES; ?>) // отново проверяваме дали сме достигнали максималния брой полета
{
document.getElementById("add_input").innerHTML = '<a href="javascript:add_input('+count_input+')">Добави поле</a>'; // показваме бутона за добавяне на поле
}
else
{
document.getElementById("add_input").innerHTML = "; // ако сме стигнали максималния брой полета скриваме бутона за добавяне на ново
}
}
}
</script>

</head>
<body>

<?php
if ($_POST['submit'])
{
function preobr($var) { // функция за преобразуване на байтовете в KB, MB, GB и т.н.
$i=0;
while (floor($var) > 0) {
$var = $var / 1024;
$i++;
}
$var = $var * 1024;
if ($i == 1 || $var == 0) { $type = "B"; }
if ($i == 2) { $type = "KB"; }
if ($i == 3) { $type = "MB"; }
if ($i == 4) { $type = "GB"; }
if ($i == 5) { $type = "TB"; }
$var = round($var,2);
return $var." ".$type;
}

define("FOLDER", "upload"); // тук може да окажете в коя папка да качва файловете
define("MAX_FILE_SIZE", 1048576); // максималния размер на 1 файл (в байтове)
define("FILE_REPLACE", false); // дали да позволява презаписа на файлове с едно и също име. true – да, false – не
$exts = array('jpg','jpeg','png','gif','sma','amxx','rar','zip','tar.qz'); // позволени разширения за файловете

for ($i=0; $i<MAX_FILES; $i++) // правим цикъл, който да обходи всеки един от избраните за качване файлове
{
if ($_FILES['file']['size'][$i] > 0) // проверяваме за всяко поле дали е избран файл
{
echo "Файл <b>".($i+1).":</b><br /><br />Име: <b>".$_FILES['file']['name'][$i]."</b><br />Размер: <b>".preobr($_FILES['file']['size'][$i])."</b><br />Тип: <b>".$_FILES['file']['type'][$i]."</b><br /><br />";

if (in_array(strtolower(end(explode(".", $_FILES['file']['name'][$i]))), $exts)) // проверяваме дали разширението на файла е позволено
{
if ($_FILES['file']['size'][$i] <= MAX_FILE_SIZE) // проверяваме дали файла не прехвърля максималния размер
{
if (!file_exists(FOLDER."/".$_FILES['file']['name'][$i]) || FILE_REPLACE) // проверяваме дали файла вече не съществува и в зависимост какво сме нагласили го презаписваме или извеждаме грешка
{
if (@copy($_FILES['file']['tmp_name'][$i], FOLDER."/".$_FILES['file']['name'][$i])) // проверяваме файла за последно дали е качен
{
echo '<b><font color="green">Файла беше качен успешно!</font><br /><a href="'.FOLDER."/".$_FILES['file']['name'][$i].'" target="_blank">Изтегли</a></b>';
}
else
{
echo '<b><font color="red">Файла не беше качен!</font></b>';
}
}
else
{
echo '<b><font color="red">Файла не беше качен, защото вече съществува файл със същото име!</font></b>';
}
}
else
{
echo '<b><font color="red">Файла не беше качен, защото надвишава максималния размер от '.preobr(MAX_FILE_SIZE).'!</font></b>';
}
}
else
{
echo '<b><font color="red">Файла не беше качен, защото е с непозволено разширение!</font></b>';
}

echo "<hr>";
}
}
}
else
{
?>
<form action="" method="post" enctype="multipart/form-data">
Файл 1:<input type="file" name="file[]" />
<div id="inputs"></div>
<?php echo (MAX_FILES > 5) ? '<div id="add_input"><a href="javascript:add_input(2)">Добави поле</a></div>' : ""; ?>
<input type="submit" name="submit" value="Качи" />
</form>
<?php
}
?>

Искам да и слова МySQL база данни която да записва три полета

Име на файла.
Размер
Тип на файла(зип.рар.ини.амхх.сма. и др фпрмати)
Автор на файла(тоес кой го е качил)
Изтегли файла

Като тези трябва да са в таблица и като качвам файлове или потребителя
да се записват последователно във таблицата и да мога да я индексирам файловете да могат да се теглят от потребителите ми.

А когато качват да не се записва името на зипа а да има таблица смисъл пояснявам.

Напримр качвам скин ето ги иполетата
1во
ЗА ОРЪЖИЕ има Drop-down list със под категорий

2ро
Име на скина: има Tex box

3то
Файл: има Tet Box + Buton(Преглед) zip или rar архив

4то
Картинка: има Tet Box + Buton(Преглед) jpg формат

5то
Източник: има Tex box Линк, откъдето сте взели скина

6то
Качи скина Buton

За скинове единственото е че ще има Мulti line tex box

Сложно е ама помогнете трябва да го абгрейдна този скрип да стане професионална система а не извадки от скрипт а малко разбирам за да го направя сам
 

Back
Горе