Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Скачивание файла для Chrome
masterlelik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 96
Пользователь №: 1297
На форуме: 9 лет, 10 месяцев
Карма:




Нужно, чтоб во всех браузерах при нажатии на ссылку "скачать" файл пдф не открывался в браузере и не скачивался, а чтоб появлялось окошко с выбором "открыть" или "скачать".
У меня есть следующие хэдеры, в ФФ и ИЕ работает нормально. А вот в хроме пробовал разные хэдеры и он упрямо или открывает в своем ридере или сразу скачивает. Как сделать, чтоб и в нем всегда спрашивало скачать или открыть?
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$file);

затем так
$x = fread(fopen($file, "rb"), filesize($file));
echo $x;
или через цикл так
if ($fd = fopen($file, "rb"))
{
while (!feof($fd))
{
print fread($fd, 1024);
}
fclose($fd);
}


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 11789
Пользователь №: 23195
На форуме: 6 лет, 4 месяца, 17 дней
Карма: 429

Трезвый :
7 лет, 3 месяца, 17 дней




--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
masterlelik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 96
Пользователь №: 1297
На форуме: 9 лет, 10 месяцев
Карма:




Не работает его решение, более того даже в ФФ вместо окошка с предложением сохранить открывает в браузере


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 8740
Пользователь №: 26630
На форуме: 5 лет, 9 месяцев, 8 дней
Карма: 591




masterlelik
браузер сам принимает решение, что делать с контентом, в зависимости от майм типа в заголовке Content-Type.


Цитата (masterlelik @ 24.11.2014 - 22:59)
затем так
$x = fread(fopen($file, "rb"), filesize($file));
echo $x;

а так вообще делать нельзя, если не хочешь сервак положить smile.gif
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
meofis  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 1
Пользователь №: 40547
На форуме: 2 года, 19 дней
Карма:




Спасибо за инфу!


--------------------
Понадобилась вода в офис Москва это место, где она точно нужна, можете приобрести её у нас с доставкой.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
masterlelik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 96
Пользователь №: 1297
На форуме: 9 лет, 10 месяцев
Карма:




Цитата (killer8080 @ 25.11.2014 - 12:14)
masterlelik
браузер сам принимает решение, что делать с контентом, в зависимости от майм типа в заголовке Content-Type.


Цитата (masterlelik @ 24.11.2014 - 22:59)
затем так
$x = fread(fopen($file, "rb"), filesize($file));
echo $x;

а так вообще делать нельзя, если не хочешь сервак положить smile.gif

Можете поведать почему?


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 8740
Пользователь №: 26630
На форуме: 5 лет, 9 месяцев, 8 дней
Карма: 591




Цитата (masterlelik @ 26.11.2014 - 22:14)
Можете поведать почему?

потому что твой скрипт вначале считывает весь файл целиком в память, а только потом отдаёт в поток. Есть же readfile() для таких целей.
да и какой смысл нагружать php отдачей статики? Вебсервер с этой задачей справится лучше, и без лишнего оверхеда.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса