kibi
Новичок
Разница в получении файл через скрипт для ИЕ и Опера
Добрый день,
Сразу хочу сказать что читал что есть в форуме:
http://phpclub.ru/talk/search.php?=&action=showresults&searchid=455392&sortby=after&sortorder=descending
Интересует возможность выдачи файла броузеру… но на сайте РНР пишут что есть проблемы с передачей для старых версию ИЕ а также для броузеров типа Опера, Нетскейп..
Предлагается такое решение:
вопрос, если я буду делать таким образом:
означает ли это что будут проблемы в разных броузерах ?? есть ли какое-то универсальное решение ?
Добрый день,
Сразу хочу сказать что читал что есть в форуме:
http://phpclub.ru/talk/search.php?=&action=showresults&searchid=455392&sortby=after&sortorder=descending
Интересует возможность выдачи файла броузеру… но на сайте РНР пишут что есть проблемы с передачей для старых версию ИЕ а также для броузеров типа Опера, Нетскейп..
Предлагается такое решение:
PHP:
global $HTTP_USER_AGENT;
$filename = “file1.rar”;
$filename = preg_replace('/[^-a-zA-Z0-9\\.]/', '_', $filename);
if (strstr($HTTP_USER_AGENT, 'compatible; MSIE ') !== false &&
strstr($HTTP_USER_AGENT, 'Opera') === false) {
// IE doesn't properly download attachments. This should work
// pretty well for IE 5.5 SP 1
header("Content-Disposition: inline; filename=$filename");
header("Content-Type: application/download; name=\"$filename\"");
} else {
// Use standard headers for Netscape, Opera, etc.
header("Content-Disposition: attachment; filename=\"$filename\"");
header("Content-Type: application/x-pilot; name=\"$filename\"");
}
PHP:
$filename = “file1.rar”;
$SRC_FILE = realpath("$filename");
$download_size = filesize($SRC_FILE);
header("Content-disposition: filename=$filename");
header("Content-type: application/octet-stream");
header("Content-Length: $download_size");
readfile($SRC_FILE);