Создание текстового файла для загрузки на лету

Обновление # 1

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

Обновление # 2

Просто добавлен exit() и все работает нормально. Благодаря!

ГОН

Здравствуй,

Я оглядывался и видел несколько подобных вещей, но не совсем понял, что мне нужно сделать, чтобы полностью выполнить эту задачу.

На данный момент у меня есть форма, которую пользователь предоставляет некоторые детали. On submit отправляется обратно к себе и обрабатываются переменные POST. У меня есть готовый HTML-шаблон HTML для размещения информации, в которой работает отлично, а денди просто делает str_replace.

То, что я пытаюсь сделать сейчас, – это экспорт, который как загрузка пользователю в текстовом документе. Таким образом, конечный результат заключается в том, что пользователь нажимает кнопку отправки в форме, и затем у них есть всплывающее окно загрузки с измененной веб-страницей в виде файла .txt.

Насколько я понимаю, мне нужно что-то сделать, используя функции заголовков HTTP. Что именно, для достижения того, чего я хочу, я не уверен. Я только хочу, чтобы файл был доступен один раз, но я предполагаю, что он должен быть где-то сохранен для загрузки пользователем, который затем потребуется очистить после ручного управления?

Любая помощь или очки были бы замечательными! Благодарю.

Ознакомьтесь с принятым решением этого вопроса . Подставьте свое собственное имя файла для basename($File) и измените файлize ($ File) на strlen($your_string) . (Вы можете использовать mb_strlen только в том случае, если строка содержит многобайтовые символы.)

Нет необходимости хранить его в любом месте. Просто выведите контент с соответствующим типом контента.

 <?php header('Content-type: text/plain'); ?>Hello, world. 

Добавьте контент-расположение, если вы хотите вызвать приглашение загрузки.

 header('Content-Disposition: attachment; filename="default-filename.txt"'); 

Используйте ниже код для генерации файлов на лету ..

 <? //Generate text file on the fly header("Content-type: text/plain"); header("Content-Disposition: attachment; filename=savethis.txt"); // do your Db stuff here to get the content into $content print "This is some text...\n"; print $content; ?> 
 <?php header('Content-type: text/plain'); header('Content-Disposition: attachment; filename="<name for the created file>"'); /* assign file content to a PHP Variable $content */ echo $content; ?>