Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Веселая задачка с заголовками.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Beholder
Отправлено: 08 Мая, 2009 - 06:21:39
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




У меня такая проблемка написал файловый хостинг, обнаружил что многие мобильные телефоны не понимают часть заголовков.

Часть кода отвечающая за выдачу файла.
PHP:
скопировать код в буфер обмена
  1.  
  2. header('Content-type: application/octetstream');
  3. header('Content-Length: ' . filesize($f1le));
  4. header('Content-Disposition: attachment; filename="'.$_FILE['filename'].'"');
  5. readfile($f1le);
  6.  

в итоге сохраняет файл не понимая его MIME и просто с иминет getfile.php

сам скрипт http://files[dot]wapwm[dot]net/16/

Помогите с реализацие как лучше?


У меня в мыслях через mod_rewrite

(Отредактировано автором: 08 Мая, 2009 - 06:31:48)

 
 Top
valenok
Отправлено: 08 Мая, 2009 - 10:24:46
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Цитата:
$file = ("mashka.rar");
header ("Content-Type: application/octet-stream");
header ("Accept-Ranges: bytes");
header ("Content-Length: ".filesize($file));
header ("Content-Disposition: attachment; filename=".$file);
readfile($file);

(Отредактировано автором: 08 Мая, 2009 - 10:25:37)



-----
Truly yours, Sasha.
 
My status
 Top
Beholder
Отправлено: 08 Мая, 2009 - 19:03:47
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Ой Улыбка ошибся дело не в этом мобильные телефоны не воспринимают! думаю сделать так через mod rewrite и заголовки динамикой. Но надеюсь есть менее извращеное решение.

(Отредактировано автором: 08 Мая, 2009 - 19:09:14)

 
 Top
valenok
Отправлено: 08 Мая, 2009 - 19:15:42
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




я думаю в сами телефоны встроено какое-то ограничение на то, что делать с какими файлами. jar сохранять, jpg сохранять, а xyz не сохранять.


-----
Truly yours, Sasha.
 
My status
 Top
Beholder
Отправлено: 08 Мая, 2009 - 19:26:43
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. header('Content-Disposition: attachment; filename="'.$_FILE['filename'].'"');
они эту строку не понимают Недовольство, огорчение такшт сохраняет по имени скрипта... и получуется на телефоне файл getfile.php который на многих телефонах не то что не отркыть расширение не поменять

(Отредактировано автором: 08 Мая, 2009 - 19:31:44)

 
 Top
Champion Супермодератор
Отправлено: 08 Мая, 2009 - 19:34:28
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Beholder пишет:
filename="'.$_FILE['filename'].'"');
Я тоже эту строку не понимаю. Что ты хотел, чтобы здесь было? Ты $_FILE['filename'] выводил на экран? Она точно определена?
 
 Top
Beholder
Отправлено: 08 Мая, 2009 - 19:40:50
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Она выдает имя файла с которым он будет сохранен
 
 Top
Beholder
Отправлено: 09 Мая, 2009 - 19:03:28
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Нет никаких предложений?
 
 Top
valenok
Отправлено: 10 Мая, 2009 - 08:21:51
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Есть предложение.
Посмотреть что же находится в этой переменной в качестве названия файла с которым оно будет сохранено.


-----
Truly yours, Sasha.
 
My status
 Top
Beholder
Отправлено: 10 Мая, 2009 - 19:37:33
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Там имя файла например image.png
 
 Top
Roler
Отправлено: 10 Мая, 2009 - 21:20:51
Post Id



Посетитель


Покинул форум
Сообщений всего: 458
Дата рег-ции: Авг. 2008  
Откуда: Россия


Помог: 1 раз(а)




Beholder
Не например, а оно там реально есть? Выведи и посмотри.

Просто, название $_FILE больно похоже на стандартный массив $_FILES, разница в одну букву.

(Отредактировано автором: 10 Мая, 2009 - 21:23:09)

 
 Top
valenok
Отправлено: 11 Мая, 2009 - 06:53:06
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Да вот браузер то сохраняет картинки не с getimage.php , а с другими названиями.
Все таки что-то телефонное. А так со всех телефонов или только твоего ?


-----
Truly yours, Sasha.
 
My status
 Top
Beholder
Отправлено: 11 Мая, 2009 - 08:07:32
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




SE K320i SE K700i SE K790i Nokia 6021
(Добавление)
$_FILE=$sql->assoc($query);
assоc(); в классе это функция записи в ассоциативный массив.
Такшт она там есть!
 
 Top
EuGen Администратор
Отправлено: 11 Мая, 2009 - 22:01:06
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Горе-телефоны..
-Отсутствие всяких стандартов (хоть и кричат на всех углах, что они - "самые правильные")
-Глючное понимание заголовков редиректа (когда Марс противостоит Венере - идет перенаправление, иначе же - нет)
-По прихоти большого пальца левой ноги разработчика ОС, и, собственно, браузера на телефоне, те или иные кодировки могут поддерживаться или нет/ те или иные заголовки проглатываться или даже выводиться в тело документа.


Увы и ах, это мир мобильных технологий. Кто в лес кто по дрова, а кто и с авоськой (или нихренаськой). Не получится у Вас унифицировать на все телефоны. Единственный выход - шаманить под конкретный телефон и, определяя его "чудо-браузер" по передаваемым им заголовкам (это почти все из них на удивление делают), отвечать по заранее вбитому шаблону.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Beholder
Отправлено: 12 Мая, 2009 - 09:28:56
Post Id



Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Март 2009  


Помог: 0 раз(а)




Думаю обмануть url' ом mod_rewrite типо : http://site[dot]ru/getfile/image[dot]png а заголовки при помощи регулярки по расширению выбором подставлять. Буду пробовать потом отпишусь если получится может кому пригодится.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB