Salve ho un piccolo problema con un file che permette agli utenti iscritti di scaricare dei file..
Il punto è questo che nella pagina che fa vedere i file all'interno della cartella funziona.. Ma quando si clicca sul file per scaricarlo dice che è inesistente...

vi posto il file così mi potete aiutare

Codice che crea la lista chiamata list.php:
codice:
<?php
session_start();
?>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3" align="center">MP3</td>
</tr>
<tr>
  <td><div align="center">Episodio</div></td>
  <td><div align="center">Dimensione</div></td>
  <td><div align="center">Mirrors</div></td>
</tr>
<?php
function getmicrotime()
{ 
   list($usec, $sec) = explode(" ",microtime()); 
   return ((float)$usec + (float)$sec); 
} 
$inizio = getmicrotime();
//Sarà utile per vedere in quanti secondi processa tutto lo script.

//mi evito tutte le cose che forse voi dovreti piazzare.. ma questo.. è il meno
$configurazione = @include("includes/db.php");
if($configurazione == false)
{
	//Non riesce ad aprire il file di configurazione dunque. non può partire poichè appunto, non conosce la directory.
	die("Impossibile inizializzare il programma");
}

//Prendiamoci tutti i file della cartella.
if ($handle = opendir($eps_dir)) 
{
	while (false !== ($file = readdir($handle))) 
	{ 
		if ($file != "." && $file != "..") 
		{
			$encode = base64_encode($file);
			$a1=filesize("$eps_dir/$file");
			$a2=$a1/1024;
			$a3=$a2/1024;
			$a4=intval($a3);
						
			echo "<tr><td align='center'>".$file."</td><td align='center'>".$a4." MB</td><td align='center'><a target=\"_blank\" href=\"down/get.php/$fakerize/$encode\">Download</a></td></tr>";
		} 
	}
	closedir($handle);
}
?>
</table>
Codice che permette o meno di scaricare.. cn verifica log, chiamato get.php

codice:
<?php
session_start();
require("../includes/db.php");
include("../includes/functions.php");

// Carichiamo qualche variabile per il controllo del tempo °__°
$now_time = time();
$dl_limit = $eps_limit*60;
$timeout = $now_time+$dl_limit;

// Prendiamo la directory per scaricare ^^
$dl_dir = explode("/",$eps_dir);

// Connetto al mysql
$connessione =	@mysql_connect($db_host,$db_user,$db_pass);
@mysql_select_db($db_name,$connessione);

//Questo è il file più importante...

$cropped = explode("/", $_SERVER['PHP_SELF']);
if($cropped[count($cropped)-2] == $fakerize)
{
	$file = $cropped[count($cropped)-1];
	$verofile = base64_decode($file);
	if(isset($_SESSION[username]))
	{
		define("OK", true);	
	}
	else if(isset($_SERVER['PHP_AUTH_USER']))
	{
		$username = $_SERVER["PHP_AUTH_USER"];
		$password = md5($_SERVER["PHP_AUTH_PW"]);
		
		//vediamo se è un vero utente o ci sta inculando di brutto.
		$query = "SELECT * FROM $table_reg WHERE username ='$username' AND password ='$password'"; //modificala secondo le tue esigenze
		if(mysql_fetch_row(mysql_query($query)))
		{
			define("OK", true);
		}
	}
	else if(!isset($_SERVER['PHP_AUTH_USER']))
	{
		header("WWW-Authenticate: Basic realm=\"AMWORLD.IT\"");
		header("HTTP/1.0 401 Unauthorized");
		redirect('javascript:window.close();', 1);
		die("Impossibile scaricare!");
	} 
	if(defined("OK"))
		{
			//inviamogli il file che tanto bramava!
			//ma prima... esiste?!
			if(is_file($dl_dir[1]."/".$verofile))
			{
			    $control = @mysql_query("SELECT dl_timeout FROM $table_reg WHERE username='$username' OR username='$_SESSION[username]'",$connessione);
				$dl_timeout = mysql_fetch_row($control);
				if ($dl_timeout[0] >= $now_time) { die("E' possibile scaricare solamente un file ogni $eps_limit minuti"); } 
				elseif($dl_timeout[0] < $now_time) {
				$set_timeout = @mysql_query("UPDATE $table_reg SET dl_timeout='$timeout' WHERE username='$username' OR username='$_SESSION[username]'",$connessione);
				mysql_close();
				
				header("Content-Disposition: attachment; filename = $verofile");
				header("Content-Transfer-Encoding: binary");
				readfile($dl_dir[1]."/".$verofile);
				}
			}
			else
			{
			    redirect('javascript:window.close();', 1);
				die("Il file da te richiesto non esiste");
			}
		}
		else
		{
			unset($_SERVER["PHP_AUTH_USER"]);
			unset($_SERVER["PHP_AUTH_PW"]);
			redirect('javascript:window.close();', 1);
			die("Non sei loghinato.");
		}
	}
else
{
	redirect('javascript:window.close();', 1);
	die("Errore. La cartella non esiste.");
}
?>
premetto che nel db.php c'è
codice:
$eps_dir   =  "down/MP3";
$eps_limit = 10;
$fakerize  =  base64_encode("togoooo").md5($eps_dir);
Inoltre giusto per farci capire nell cartella down ci sono i file get e list..all'interno di down c'è un altra cartella kiamata MP3

spero che risuciate ad aiutarmi.. grazie