certamente!
è tutto open source 
downloads.php
Codice PHP:
<?php
class MySql
{
function Connect($DB_User, $DB_Pass, $DB_Host)
{
return mysql_connect($DB_Host, $DB_User, $DB_Pass);
}
function SelectDB($DB_Name, $DB)
{
return mysql_select_db($DB_Name, $DB);
}
function Query($Query, $DB)
{
return mysql_query($Query, $DB);
}
function Close($DB)
{
mysql_close($DB);
}
}
$User = "User DB";
$Pass = "Pass DB";
$NomeDB = "Nome DB";
$HostDB = "localhost";
$MySql = new MySql;
$DB = $MySql->Connect($User, $Pass, $HostDB);
$MySql->SelectDB($NomeDB, $DB);
if($_GET[view] == "categories" or !isset($_GET[view]))
{
$Query = "SELECT * FROM downloads_cats ORDER BY id DESC";
$Result = $MySql->Query($Query, $DB);
while ($Row = mysql_fetch_array($Result))
{
echo('<center><a href="downloads.php?view=cat&id='.$Row[id].'">'.$Row[titolo].'</a><br /><br />'.$Row[descrizione].'<br /><br /><br />');
}
} elseif ($_GET[view] == "cat" AND isset($_GET[id])) {
$PaginaCorr = (!$_GET['pagina']) ? 1 : (int)$_GET['pagina'];
$Primo = ($PaginaCorr - 1) * 5;
$Ultimo = $PaginaCorr * 5;
$Query = "SELECT * FROM downloads_files WHERE cid=$_GET[id] ORDER BY id DESC LIMIT $Primo,$Ultimo";
$Result = $MySql->Query($Query, $DB);
while ($Row = mysql_fetch_array($Result))
{
echo('<center><a href="'.$Row[fpath].'">'.$Row[nome].'</a><br /><br />'.$Row[descrizione].'</center><br /><br /><br />');
}
$Query = "SELECT * FROM downloads_files WHERE id=".$_GET[id];
$Result = $MySql->Query($Query, $DB);
$TotDownloads = mysql_num_rows($Result);
$NumPags = ceil($TotDownloads / 5);
if($NumPags > 0)
{
echo("<br /><br /><center> Pagina ");
for($Pag = 1; $Pag <= $NumPags; $Pag++)
{
if($Pag == $PaginaCorr){
echo"<b>".$Pag."</b> ";
} else {
echo"<a href='downloads.php?view=cat&id=".$_GET[id]."&pagina=".$Pag."'>".$Pag."</a> ";
}
}
echo("</center>");
}
}
$MySql->Close($DB);
echo('<center>Area downloads by <a href="http://thecore.altervista.org">theCore</a></center>');
?>
adm_downloads.php
Codice PHP:
<?php
class MySql
{
function Connect($DB_User, $DB_Pass, $DB_Host)
{
return mysql_connect($DB_Host, $DB_User, $DB_Pass);
}
function SelectDB($DB_Name, $DB)
{
return mysql_select_db($DB_Name, $DB);
}
function Query($Query, $DB)
{
return mysql_query($Query, $DB);
}
function Close($DB)
{
mysql_close($DB);
}
}
$User = "User DB";
$Pass = "Pass DB";
$NomeDB = "Nome DB";
$HostDB = "localhost";
$FormFile = '<form method=post action="adm_downloads.php">
Titolo:<br>
<input type=text size=40 name=titolo><br>
Cat ID:<br>
<input type=text size=40 name=catid><br>
Path:<br>
<input type=text size=40 name=fpath><br>
Descrizione:<br>
<textarea cols=40 rows=20 name=descrizione></textarea><br>
<br> <input type=submit value=Invia name=sendF> </form>';
$FormCat = '<form method=post action="adm_downloads.php">
Titolo:<br>
<input type=text size=40 name=titolo><br>
<br>
Descrizione:<br>
<textarea cols=60 rows=40 name=descrizione></textarea><br>
<br> <input type=submit value=Invia name=sendC> </form>';
if(!isset($_POST[sendC]) && !isset($_POST[sendF]))
{
if($_GET[cosa] == "cat")
{
echo($FormCat);
} elseif ($_GET[cosa] == "file"){
echo($FormFile);
}
} else {
$titolo = $_POST[titolo];
$descrizione = $_POST[descrizione];
if(isset($_POST[sendF]))
{
$catid = $_POST[catid];
$path = $_POST[fpath];
}
$titolo = addslashes(stripslashes($titolo));
$descrizione = addslashes(stripslashes($descrizione));
$titolo = str_replace("<", "<", $titolo);
$titolo = str_replace(">", ">", $titolo);
$descrizione = str_replace("<", "<", $descrizione);
$descrizione = str_replace(">", ">", $descrizione);
$descrizione = nl2br($descrizione);
$MySql = new MySql;
$DB = $MySql->Connect($User, $Pass, $HostDB);
$MySql->SelectDB($NomeDB, $DB);
if(isset($_POST[sendC]))
{
$Query = "INSERT INTO downloads_cats (titolo, descrizione) VALUES ('$titolo', '$descrizione')";
} elseif (isset($_POST[sendF))
{
$Query = "INSERT INTO downloads_files (cid, fpath, titolo, descrizione) VALUES ('$catid', '$path', '$titolo', '$descrizione')";
}
if ($MySql->Query($Query, $DB))
{
echo("Il download è inserito correttamente");
} else {
echo("Errore durante l'inserimento del download");
}
$MySql->Close($DB);
}
?>
Tabelle del db
Codice:
CREATE TABLE downloads_cats (
id int(5) unsigned NOT NULL auto_increment,
titolo varchar(255) NOT NULL default '',
descrizione text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
CREATE TABLE downloads_files (
id int(5) unsigned NOT NULL auto_increment,
cid int(5) unsigned NOT NULL default '0',
fpath varchar(255) NOT NULL default '',
nome varchar(255) NOT NULL default '',
descrizione text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
PS: il codice è migliorabile 
quando avrò più tempo lo metterò a posto.
cmq così funziona 
Ahh per favore lascia il link sotto