А вот про твой шелл.
$fd=fopen($_POST['downf'], "rb")
while(!feof($fd)){
$buffer=fgets($fd,4096);
echo $buffer;
}
просто уже наверное везде доступна.
readfile($file);
Везде насувал
header("Content-Type: application/octet-stream; name=\"$name\"");
header("Content-Length: ".filesize($tmpfname)."");
header("Content-disposition: attachment; filename=\"$name\"");
$fd=fopen($tmpfname, "r");
НЕ проще ли было зделать функцию.
$_POST2=$_POST;# X.Z. zachem, xernya kakaeto

Действительно слизал где то

Хотя бы убрал.
Это зачем <?php exit; ?> ? че сценарий виснет где то? Или ты сам не разбирался как он работает?и слово
directory пишется через е а не i
dirictory
Дирикторий в школе .

И последнее прежде чем искать соринку у меня в глазу проверь а не торчит ли у тебя в сраке бревно.
Сори за русский но я был о тебе лучшего мнения.