![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Vitalik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Собственно САБЖ
Я так подозреваю, что для скачивания файла нужно давать не прямой линк на файл, а линк на специальную php-шку, в которой я буду увеличивать нужные счётчики и каким-то образом подставлять файлик для скачивания... Вот с последним и проблемы... Как это можно сделать?.. Заранее спасибо! |
|||
|
||||
| Darhazer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 28.9.2005 Где: HellCity (Sofia, Bulgaria) Репутация: 7 Всего: 29 |
Простейший начин:
-------------------- I'm a wheel, I'm a wheel, I can roll, I can feel But you can't stop me turning 'Cause I'm the sun, I'm the sun, I can move, I can run But you'll never stom me burning |
|||
|
||||
| Vitalik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Ё-моё, действительно! |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Ну скачиавние делаешьтак:
1. Ссылки типа: ?song=13131 2. Открываешь новое окно win.php?song=1231 3. Увеличиваешь в БД счетчик скачивания, где ID файла - переменная $_GET['song']. 4. Посылаешь сам файл пользователю. 5. Закрываешь окно. Только файл не одним header'ом посылаешь. |
|||
|
||||
| Vitalik |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Угу, я так и собирался
Гм... Эт как? А файл пользователь всё-таки успеет получить?..
Подробнее, плиз |
||||||
|
|||||||
| Mal Hack |
|
||||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
ты открываешь окно, посылаешь файл пользователю, а затем выводишь JS код закрытия окна.
В качестве Content-type можно использовать application/octet-stream application/x-download и unknown/unknown |
||||||
|
|||||||
| Darhazer |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 28.9.2005 Где: HellCity (Sofia, Bulgaria) Репутация: 7 Всего: 29 |
Работаеть только в окнах, которые создал через window.open()
Подробнее, плиз Другой способ для скачивания могу напиать в понедельник, у меня в офисе, но в принципе делаеться так (код взял с php.net) edit: Mal Hack уже написал лучший код Ну надо поекспериментировать не много, я делал так скачивания динамически сгенерированого .gz файла P.S. вообщем почитай коментарии к функции Header Это сообщение отредактировал(а) Darhazer - 1.10.2005, 23:21 -------------------- I'm a wheel, I'm a wheel, I can roll, I can feel But you can't stop me turning 'Cause I'm the sun, I'm the sun, I can move, I can run But you'll never stom me burning |
||||||||
|
|||||||||
| Vitalik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Mal Hack, всё заработало и без открытия новых окон, просто подставил твой код с header'ами
Правда правильно это работает только в Опера. В IE почему-то имя файла берётся как имя php-шки Что бы это могло быть?.. |
|||
|
||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Вообще, в Опере обычно идет глюк, если файл не стоит, как application/octet-stream... В ИЕ такого быть не должно.
Покажи полностью этот код, особенно то, что находится в $file_server_path. Если там папка, тиобишь что-ть вроде /234/24/234/234/234.zip, то возможно, что ИЕ подменяет ее на значение ПХП файла... |
||||
|
|||||
| Vitalik |
|
||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Что за глюк?
GetHighlighter возвращает относительный путь от папки files/highlighters, а сама эта папка находится там же где и index.php. Таким образом в $filename получаем нечто вроде "files/highlighters/somefile.zip". Попробовал и такой вариант (абсолютный путь):
Не понял. А какое там еще может быть значение?.. И почему это он её так подменяет?.. |
||||||||||
|
|||||||||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Она его выводит... Попробуй так:
|
||||
|
|||||
| Vitalik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Эффект тот же |
|||
|
||||
| Darhazer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 429 Регистрация: 28.9.2005 Где: HellCity (Sofia, Bulgaria) Репутация: 7 Всего: 29 |
Привет,
я делаю закачку так:
P.S. Только что проверил под IE 6, Firefox 1.0.7, Opera 8.50 - работаеть Это сообщение отредактировал(а) Darhazer - 3.10.2005, 16:54 -------------------- I'm a wheel, I'm a wheel, I can roll, I can feel But you can't stop me turning 'Cause I'm the sun, I'm the sun, I can move, I can run But you'll never stom me burning |
|||
|
||||
| Vitalik |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: нет Всего: 12 |
Всё! Заработало! Я просто сделал еще basename($filename); ведь в $filename тоже может быть относительный путь Спасибо!
Ого! Тоже спасибо, но не люблю когда много кода получается |
||||
|
|||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
нзч, если что обращайся |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |