|
|
|
| Всем привет!)
есть страница, нужно весь текст имеющийся на ней почистить от тегов и поместить в файл для скачивания например text.txt Как такое можно реализовать. Если можно пример кода, спсибо. | |
|
|
|
|
|
|
|
для: *m*
(17.06.2009 в 14:18)
| | Удалить теги - strip_tags()
И потом уже чистый текст записать файл. Смотрите функции работы с файлами. | |
|
|
|
|
|
|
|
для: Лена
(17.06.2009 в 14:59)
| | вот как-то так я себе это представил:
<?
// Подавляем вывод текствых файлов в окно браузера, используем заголовки.
header("Content-Disposition: attachment; filename=text.txt");
header("Content-type: application/octet-stream");
// Получаем данные из формы, на скачивание файла
if(isset($_POST['download']) {
// Обрабатываем функцией переменную $text с необходимой информацией для записи и оставляем теги <br>
strip_tags($text, '<br>');
// Создаем файл для записи
$content = fopen("text.txt", "w");
// Записываем в него нужную информацию
fwrite($content, $text);
// Закрываем записанный файл
fclose($content);
}
// Проверяем существует ли файл на сервере
$check = file_exists("text.txt");
// В случае, если существует, даем ссылку на скачивание
if($check = true) { /*открывается директория, где храниться файл и начинается инициализация процесса*/}
?>
|
отсюда несколько вопросов:
1. Как сделать так чтобы открылась директория?
2. Как нужно записать этот код, чтобы нажал человек по кнопочке скачать например и сразу выполнились все действия указанные выше и началась загрузка?
3. Если например 2 и более человек одновременно обратяться к скрипту, то при записи в файл
одновременно несколькими пользователями могут возникнуть конфликтные ситуации??
Если так, то как это обойти, тоесть можно как-то для каждого вользователя создавать файл с уникальным название чиловым или буквенным..как это сделать?? | |
|
|
|
|
|
|
|
для: *m*
(17.06.2009 в 18:56)
| | первые две строки зачем?
Вы же ничего не выводите. | |
|
|
|
|
|
|
|
для: Trianon
(17.06.2009 в 19:01)
| | ну мне нужно чтобы файл text.txt был для скачивания, а для текстовых файлов, не открывается окно предлагающее сохранить файл, а осуществляется вывод в окно браузера. для этого первые две строчки. | |
|
|
|
|
|
|
|
для: *m*
(17.06.2009 в 22:05)
| | эти строчки на файл никак не повлияют.
Они повлияют на поведение скрипта при вызове. | |
|
|
|
|
|
|
|
для: Trianon
(17.06.2009 в 22:18)
| | тоесть их нужно указать сразу после вызова скрипта?
а как быть с остальными вопросами? | |
|
|
|
|
|
|
|
для: *m*
(17.06.2009 в 22:31)
| | Из Вашего исходного поста следовало, что скрипт, который формирует файл и скрипт, который отдает этот файл - разные.
а дальше я ни строки не понял... | |
|
|
|
|
|
|
|
для: Trianon
(17.06.2009 в 23:29)
| | вот этот вопрос меня интересует:
Если например 2 и более человек одновременно обратяться к скрипту, то при записи в файл
одновременно несколькими пользователями могут возникнуть конфликтные ситуации??
Если так, то как это обойти, тоесть можно как-то для каждого вользователя создавать файл с уникальным название чиловым или буквенным..как это сделать??
и нада както придумать чтобы файл текстовый удалялся после закрытия страницы.
и куда нужно прописывать:
header("Content-Disposition: attachment; filename=text.txt");
header("Content-type: application/octet-stream");
? | |
|
|
|
|
|
|
|
для: *m*
(18.06.2009 в 00:12)
| | >вот этот вопрос меня интересует:
>
>Если например 2 и более человек одновременно обратяться к скрипту, то при записи в файл
>одновременно несколькими пользователями могут возникнуть конфликтные ситуации??
>Если так, то как это обойти, тоесть можно как-то для каждого вользователя создавать файл с уникальным название чиловым или буквенным..как это сделать??
Сами же и ответили - запастись уникальным идентификатором.
Если из прикладных данных этот идентификатор не получить - остаются uniqid() tempnam() и т.п.
>и нада както придумать чтобы файл текстовый удалялся после закрытия страницы.
чушь. страница закрывается на клиенте, а файл лежит на сервере.
>и куда нужно прописывать:
>
>header("Content-Disposition: attachment; filename=text.txt");
>header("Content-type: application/octet-stream");
Если файл отдается скриптом, то в этот скрипт отдачи контента. | |
|
|
|
|
|
|
|
для: Trianon
(18.06.2009 в 01:04)
| | вы можете на примере в моем коде показать куда нужно записать эти заголовки??
у меня везде выдает ошибку :
Warning: Cannot modify header information - headers already sent by (output started at Z: итд | |
|
|
|