|
|
| Автор |
Сообщение |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Пт Дек 23, 2005 8:27 pm Заголовок сообщения: PHP: Из .txt в .gz на лету и скачать... |
|
|
Поставил перед собой бредовую задачу и вдруг понял, что решить ее без посторонней помощи неспособен.
Суть: есть текстовые файлы, которые инклюдятся в страницы сайта. Необходима функция скачивания этих файлов, чтобы юзеры не тратили время на копирование, а просто кликали по ссылке "Скачать".
Требуемое решение: Файлы эти должны паковаться в формат GZ и скачиваться НЕ СОЗДАВАЯСЬ, как таковые, на диске. Как это сделать? хз...
Кстати, сообщение, по большей части, адресовано OldFornit`у  |
|
| Вернуться к началу |
|
 |
admin Администратор

Возраст: 33
Зарегистрирован: 10.08.2004
Сообщения: 1596
Откуда: Ukraine
|
Добавлено: Сб Дек 24, 2005 8:52 am Заголовок сообщения: |
|
|
| А если посмотреть как это реализовано в phpmyadmin при експорте базы данных MySQL? |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Сб Дек 24, 2005 8:55 pm Заголовок сообщения: |
|
|
| Да вот, разбираюсь... |
|
| Вернуться к началу |
|
 |
OldFornit Модератор

Возраст: 30
Зарегистрирован: 12.05.2005
Сообщения: 846
|
Добавлено: Пн Дек 26, 2005 12:20 pm Заголовок сообщения: |
|
|
Чего не знаю, того не знаю )
На досуге тоже покопаюсь, но не уверен, что и в phpmyadmin это сделано без промежуточного файла |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Пн Дек 26, 2005 5:06 pm Заголовок сообщения: |
|
|
OldFornit, в принципе, с упаковкой я разобрался. Теперича туплю над тем, как сделать так, чтобы файл сначала скачивался, а потом удалялся. Сделал вот так:
[code:1:3a9768075d]
$path="path/to/my/file.txt";
$content=file_get_contents($path);
$content=strip_tags($content);
$zp=gzopen($path.".gz", "w");
gzputs($zp, $content);
gzclose($zp);
echo '<a href="'.$path.'.gz">Скачать</a>';
[/code:1:3a9768075d]
В принципе работает. А вот как удалить файл? Перегружать страницу? |
|
| Вернуться к началу |
|
 |
OldFornit Модератор

Возраст: 30
Зарегистрирован: 12.05.2005
Сообщения: 846
|
Добавлено: Вт Дек 27, 2005 4:37 pm Заголовок сообщения: |
|
|
| а кто мешает все это сделать во всплывающем окошке? |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Вт Дек 27, 2005 7:03 pm Заголовок сообщения: |
|
|
| Всплывающие окошки могут быть заблокированы юзером. |
|
| Вернуться к началу |
|
 |
admin Администратор

Возраст: 33
Зарегистрирован: 10.08.2004
Сообщения: 1596
Откуда: Ukraine
|
Добавлено: Вт Дек 27, 2005 7:18 pm Заголовок сообщения: |
|
|
| А вариант такой - скрипт проверяет есть ли в папке файлы, созданные болше чем сутки и их удаляет? |
|
| Вернуться к началу |
|
 |
Денис Модератор

Возраст: 36
Зарегистрирован: 21.08.2004
Сообщения: 1490
Откуда: Санкт-Петербург
|
Добавлено: Вт Дек 27, 2005 9:35 pm Заголовок сообщения: |
|
|
| admin, лишний код. Ладно, как-нибудь выкрутимся... |
|
| Вернуться к началу |
|
 |
|