JustUserR пишет:alexx2007 Ну где у вас путь к фалу хранится или имя файла А если путь к файлу то его надо обработать с омощью basename чтобы получить только имя файла
Сорри, я ваще ламер в пхп, я совершенно не знаком с языком
Вот есть у меня срипт
<?
// load session management
require("./inc/inc.php");
// check for all parameters
if( $attach == "" ||
$folder == "" ||
$ix == "") redirect("error.php?err=3&tid=$tid&lid=$lid");
$mail_info = $sess["headers"][base64_encode($folder)][$ix];
if(!is_array($mail_info)) redirect("error.php?err=3&tid=$tid&lid=$lid");
$arAttachment = explode(",",$attach);
$attach = $mail_info;
foreach($arAttachment as $item )
if(is_numeric($item))
$attach = &$attach["attachments"][$item];
$path1 = realpath($temporary_directory);
$path2 = realpath($attach["filename"]);
if((substr($path2, 0, strlen($path1)) != $path1) || !file_exists($attach["filename"])) { redirect("error.php?err=3&tid=$tid&lid=$lid"); exit; }
$fp = fopen($attach["filename"],"rb"); fseek($fp,0,SEEK_END);
$size = ftell($fp); rewind($fp);
$stream = fread($fp,$size);
fclose($fp);
$disposition = (!$down)?"inline":"attachment";
$type = (!preg_match("/[a-z]+\/[a-z-]+/i",$attach["content-type"]))?"application/octet-stream":$attach["content-type"];
Header("Content-Type: $type; name=\"".$attach["name"]."\"\r\n");
Header("Content-Length: $size\r\n");
Header("Content-Disposition: $disposition; filename=\"".$attach["name"]."\"\r\n");
echo($stream);
?>
Что мне надо убрать и что добавить?
Желательно ваще на пальцах... Мне с языком пока разбираться некада.
Я пока вникну - время пройдет.
Может нужен сам исполняющий скрипт, откуда идет вызов download.php ?
Кстати, запрос хттп /download.php?folder=inbox&ix=1&attach=0&tid=webmail&lid=ru&down=1
как я понял, в запросе есть путь где лежит файл по умолчухе и номер аттача - 0, тид - я не знаю че такое
Короче выручайте братцы, если еще какая инфа нужна - дам все че нужно.
|