title
Description
Body
автор: Oberon (20.02.2008 в 18:58)
А подделать реферер никак нельзя?.. Другого выхода думаю нет,..
автор: Gemorroj (20.02.2008 в 19:35)
Можно конечно, это обычный заголовок. Только вот как раз чтобы его отправить, нужно писать что-то более серьезное нежели header('Location: ...');, а именно, использовать что-то из этого набора: curl, fsockopen, ini_set + file_get_contents
автор: Oberon (20.02.2008 в 20:52)
Боюсь, я более серьезное не осилю.. Если можно, подробнее об этом всем.. Лишь бы мобильные телефоны на этом работали,
/// поможеш?
Неактивен
опишу на мой взгляд самый простой способ, с помощью ini_set + file_get_contents
|
|
Должно работать, если не заблокирована функция ini_set
Неактивен
Gemorroj написал:
опишу на мой взгляд самый простой способ, с помощью ini_set + file_get_contents
(...)
Должно работать, если не заблокирована функция ini_set
Вставил код, но выдает ошибку, в твоем примере в строке 69.. Вот что пишет:
Parse error: syntax error, unexpected T_ELSE in /home/darkto/public_html/wapquest/download.php on line 93
Даже не знаю почему,..
Неактивен
Уже нашел ошибку... Каюсь, свой "}" закомментил, когда твой код вставлял,..
Тут вот другой бок вылез, пытается скачаться файл file.zip размером 1,6кб вместо файла name.jar.. и файл не скачиваеться... сейчас свой скрипт дам,
Добавлено спустя 8 минут 13 секунд:
|
|
Отредактировано Oberon (2008.05.14 13:05)
Неактивен
у тебя в 27 строке ошибка... присваиваешь переменной $url значение реферера.
вот поправленный код.
|
|
Неактивен
А так выдает ошибку
|
|
Я не могу понять эту строчку
|
|
почнму именно http://xxx.kmx.ru/file.zip... может вот так надо
|
|
?
$referer = $url; так тоже выдает ошибку, ту же самую.. Запутался я ,.
Там пару ошибок было, исправил,.. В общем, вот код,
|
|
Пробую скачивать, только начинаеться закачка файла (уже тот файл что нужен, даже размер его реальный видно) и сразу закачка обрываеться...
Отредактировано Oberon1 (2008.05.14 14:12)
Неактивен
is not a valid MySQL result - догадайся как переводится? ошибка в SQL запросе
10 строка. $data = mysql_fetch_array(mysql_query('SELECT `r_url` FROM `quest_files` WHERE `id` = '.$id)); - синтаксических ошибок нет. вероятно с базой что-то не так.
$referer - это РЕФЕРЕР.
$url - это URL, путь к файлу, который ты собираешся скачать.
вобщем они могут иметь одинаковое значение.
можешь писать и $referer = $url; не важно.
посмотри что у тебя в переменной $url, она будет пустая. Т.к. на наш SQL запрос MySQL ответил руганью.
Неактивен
is not a valid MySQL result уже догодался как переводится, поэтому и исправил десятую строку,...
в переменной $var уже прямая ссылка на файл на сайте кмх...
вот про реферер я и не доконца пойму,.. насколько я понимаю, в нем нужно указать http://quest.kmx.ua/ - сайт, с которого идет загрузка,.. Или я чтото не так понимаю,..
Неактивен
интересно, я вот попробовал с телефона скачать, раз через раз выпадает превышение таймаута соединения, а иногда пишет вот такое
Warning: file_get_contents(http://quest.kmx.ua/files/240x320/litlboy_240x320.jar) [function.file-get-contents]: failed to open stream: HTTP request failed! всякие_иероглифы in /home/darkto/public_html/wapquest/download.php on line 25
Warning: Cannot modify header information - headers already sent by (output started at /home/darkto/public_html/wapquest/download.php:25) in /home/darkto/public_html/wapquest/download.php on line 34
Warning: Cannot modify header information - headers already sent by (output started at /home/darkto/public_html/wapquest/download.php:25) in /home/darkto/public_html/wapquest/download.php on line 35
Warning: Cannot modify header information - headers already sent by (output started at /home/darkto/public_html/wapquest/download.php:25) in /home/darkto/public_html/wapquest/download.php on line 36
Warning: Cannot modify header information - headers already sent by (output started at /home/darkto/public_html/wapquest/download.php:25) in /home/darkto/public_html/wapquest/download.php on line 37
Warning: Cannot modify header information - headers already sent by (output started at /home/darkto/public_html/wapquest/download.php:25) in /home/darkto/public_html/wapquest/download.php on line 38
Warning: Cannot modify header information - headers already sent by (output started at /home/darkto/public_html/wapquest/download.php:25) in /home/darkto/public_html/wapquest/download.php on line 39
Неактивен
реферер не надо даже кстати.
блин, идиотская ошибка, обидно) заголовки-то мы вывели, а сам файл не отдаем)
в конце еще напиши print $data;
сейчас коды выше поправлю.
Неактивен
A пpoвepить нa aдpec kak? Tak мoжнo?
|
|
Tипa, ecли нaчaлo нe мoй caйт, тo пocлaть
Неактивен
$_SERVER['HTTP_REFERER'] - в этом элементе массива будет реферер, если он передан (далеко не всегда)
ereg - рункция регуларного выражения. Честно говоря о ereg'ах лучше вообще забыть. Для регулярок использовать PERL'овские регулярки (preg_match, preg_replace и др) т.к. они шустрее и в PHP 6 POSIX регулярки (ereg и др) будут вообще устранены
проверить лучше строковой функцие какой-нить
|
|
$_SERVER['HTTP_HOST'] - здесь адрес твоего хоста, так что задавать отдельную переменную с адресом сайта не нужно.
Неактивен