- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Собственно суть в чем.
в переменной $text лежит текст, который я хочу ввиде txt файла передавать в браузер пользователя, для скачивания. (не сохраняя файл на сервере);
Слышал, что это делается через заголовки как-то.
Но мой код
if($do_it == "export_position") {$text = "<h1>Текст, который должен быть в файле</h1>";
header('Content-Length: ' . strlen($text));
header('Content-type: application/txt'); //тут тип
header('Content-Disposition: attachment; filename="r36.txt"');//имя
echo 'file................................................file';//файл*/
}
Выдает ошибку Warning: Cannot modify header information - headers already sent by
PS Сайт на WordPress
Нельзя посылать заголовок после контента.
Заголовок всегда должен быть самым первым. перед <html>
в случае вывода файла
и все. и никаких html, header, body etc
Нельзя посылать заголовок после контента.
Заголовок всегда должен быть самым первым. перед <html>
Да знаю я, но как мне быть?
Заголовки же вордпрес отправляет. Я под него этот экспорт пишу.
Может альтернатива есть какая.
Т.е. мне нужно как-то передать юзеру на сохранение файлик содержимое которого - задано переменной.
Может как то через curl_setopt подступиться, но как?
djdiplomat, можно написать отдельный скрипт, который будет доставать ваши данные и выводить их. скрипт вы можете положить в папку и настроить .htaccess так, что при обращении к любому файлу в этой папке запрос перенаправлялся на ваш скрипт, который и будет генерить контент на вывод
Хватит эти сказки.
ТС, сразу после в самом начале файла или где там у вас пишите:
<?php
ob_start();
?>
И заголовки потом хоть в конце прописывайте. Всё будет работать.
djdiplomat, можно написать отдельный скрипт, который будет доставать ваши данные и выводить их. скрипт вы можете положить в папку и настроить .htaccess так, что при обращении к любому файлу в этой папке запрос перенаправлялся на ваш скрипт, который и будет генерить контент на вывод
Я по ходу что-то недопонял в Вашей идеи.
Ну вот смотрите. У меня сейчас в админке WP человек выбрал нужные параметры (чекбоксами), нажал кнопку скачать.
Потом идет передча по методу POST.
Прошел потом запрос к базе. Я собрал нужные параметры в переменную $текст
Потом стартует это условие
if($do_it == "export_position") {
насколько я понимаю вы предлагает сделать в нем что-то типа
if($do_it == "export_position") {require_once F_DIR.'export.php';
}
а в файле export.php разместить заголовки? Но разве не тоже самое получится, не таже трабла вылезет?
Просто мне нужно, чтобы эта штука через админку работала. Чтобы клиент нажал кнопочку и скачал, что нужно ему.
LEOnidUKG, ну прально, таким образом вы гоните данные в буфер.
а если ob_start не написать первым, что получится? как думаете?
Хватит эти сказки.
ТС, сразу после в самом начале файла или где там у вас пишите:
<?php
ob_start();
?>
И заголовки потом хоть в конце прописывайте. Всё будет работать.
Ура! Помогло! ОГРОМНОЕ СПАСИБО! :)
А почему не отдавать файл на новой странице?
Это же проще простого.
передали через post данные, и скачали.
Примеров на скачивание в сети масса.
И не будет ли нагрузки, если качать будут много.
Ну работает, значит хорошо
А почему не отдавать файл на новой странице?
Это же проще простого.
передали через post данные, и скачали.
Примеров на скачивание в сети масса.
И не будет ли нагрузки, если качать будут много.
Просто это задача в рамках большого плагина с кучей функций. Мне показалось, что так удобнее будет.
Нагрузки не будет, тк. эта функция для админов сайта и ей пользоваться будут раза 2 в неделю.