Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Headers already sent

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

candy_man



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
При попытке отправить сообщение на e-mail, выдает такое сообщение:  
 
Warning: Cannot modify header information - headers already sent by (output started at ***/top.php:5) in /home/mp3ex50/public_html/playlists/send_list.php on line 117
 
Это значит, что headers уже посланы из top.php? А скажите пожалуйста, что из кода top.php может их послать?  
 
<html>
<head>
<title>Скачать мр3 музыку бесплатно без регистрации | заказ новинки и архив mp3 | Mp3ex - система обмена мр3 | скачать/заказать архив новых мр3 бесплатно</title>





Того, что оставил, было достаточно /Cheery/

Всего записей: 119 | Зарегистр. 11-06-2004 | Отправлено: 00:55 09-05-2005 | Исправлено: Cheery, 01:29 09-05-2005
GeMir



Ich finde dich
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
candy_man
А текст "послания" - новый способ маскировки рекламы?

Всего записей: 10296 | Зарегистр. 15-02-2004 | Отправлено: 01:12 09-05-2005 | Исправлено: GeMir, 01:14 09-05-2005
candy_man



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Добавляю:  
Сообщение указывает на строчку 117. Там вот что:  
 
Header("Location: $after_sent");
 
$after_sent - а этот параметр означает:  
$after_sent="/ok.php"; // страница, на которую будет перенаправлен пользователь после отправки письма
 
Может как то поможет?  
 
Добавлено:
GeMir нет, не реклама это. Реально не понимаю проблемы. Знаю, что здесь умные люди найдутся.  

Всего записей: 119 | Зарегистр. 11-06-2004 | Отправлено: 01:13 09-05-2005
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
candy_man
то, что ты привел в качестве файл top.php таковым не является.


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 01:30 09-05-2005
candy_man



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery да верно. Структура сайта такая, что к каждой странице инклудится top, menu и bottom. Я пробовал убирать top.php из инклуда, тогда мне выдавало сообщение что headers отправил (ну например) send.php.  

Всего записей: 119 | Зарегистр. 11-06-2004 | Отправлено: 01:47 09-05-2005
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
candy_man

Цитата:
Cheery да верно. Структура сайта такая, что к каждой странице инклудится top, menu и bottom. Я пробовал убирать top.php из инклуда, тогда мне выдавало сообщение что headers отправил (ну например) send.php.  

еще раз.. то, что было приведено выше, вообще не тот файл.
написано, что вывод начался на 5 строке файла top.php..
в том, что было выше, вывод начинается с первой строки, а, значит, и в сообщении была бы указана именно она.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 01:49 09-05-2005 | Исправлено: Cheery, 01:49 09-05-2005
edogs

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
candy_man
Хидеры посылаются при посылании любой информации "на экран".
Установка печений, вывод любого текста, инфа перед <?php или после ?> и т.д.
Собственно если кусок приведённого кода это top.php - то это и есть простейший вывод информации на экран, хидеры кидаются автоматом.

Всего записей: 1777 | Зарегистр. 25-07-2004 | Отправлено: 01:49 09-05-2005
candy_man



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
edogs т.е. все, что до этого кода - это он считает уже отправленными хидерами?
 
Ну и чего же мне делать? Может как-то подправить код, чтобы он огибал эти хидеры, а просто редирект делал на нужную страницу. Там же простой код: обработал данные - послал - отправил на страницу...  
 
 

Всего записей: 119 | Зарегистр. 11-06-2004 | Отправлено: 01:59 09-05-2005
edogs

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
candy_man
А что ДО этого кода?
 
Мы видим в первом сообщении только кусок html.  
<html...
Как только Вы посылаете это на экран - автоматом стартуют хидеры.
 
Исходя из контекста вопроса (ибо описывать его достаточно внятно Вы не стали), вероятно следуюет сделать следующее.
 
В файл top.php в самое начало поставить
<?php
ob_start();
?>
(ну или в send_list.php, черт его разберет структуру Ваших файлов)
 
Если хотите внятного ответа, поясните хоть каким образом и в какой последовательности подключаются какие файлы, что за отправка на e-mail (которая у нас вызывает ассоциации исключительно с аутглюком где никаких хидеров точно нет) и где таки PHP-код начинает работать и что делает.

Всего записей: 1777 | Зарегистр. 25-07-2004 | Отправлено: 02:04 09-05-2005 | Исправлено: edogs, 02:04 09-05-2005
candy man



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
edogs думаю, непонадобится объяснять, т.к. приведенный кусочек кода помог. Действительно, втавив его, сообщение перестало выскакивать! Огромное спасибо! А какую он роль сыграл?  

Всего записей: 119 | Зарегистр. 11-06-2004 | Отправлено: 13:23 09-05-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
edogs, вот уж не ожидал такой кривости.
candy man PHP FAQ: объяснение и исправление ошибки "Cannot add header information  - headers already sent"

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 13:31 09-05-2005
edogs

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SiMM

Цитата:
вот уж не ожидал такой кривости.

1) Аргументы в пользу "кривости" решения учитывая всё вышесказанное?
2) Более прямое решение?

Всего записей: 1777 | Зарегистр. 25-07-2004 | Отправлено: 14:37 09-05-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1) Ошибки надо исправлять, а не вешать костыли.
2) Прямое решение приведено по ссылке.

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 14:42 09-05-2005
edogs

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SiMM
Без комментариев. Мы то думали....

Всего записей: 1777 | Зарегистр. 25-07-2004 | Отправлено: 15:21 09-05-2005
candy_man



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SiMM согласно статье, хидеры были посланы 5-й строкой из файла top.php. 5-я строка - это meta description.... Разве эта часть кода может их послать?  

Всего записей: 119 | Зарегистр. 11-06-2004 | Отправлено: 11:28 11-05-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
SiMM согласно статье, хидеры были посланы 5-й строкой из файла top.php. 5-я строка - это meta description.... Разве эта часть кода может их послать?  
Читай статью ещё раз и внимательно, а не через строчку.

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 11:53 11-05-2005
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Headers already sent


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru