Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Комментарии на странице

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Ошибка при отправке комментария
Ghost_t91aa
Отправлено: 08 Января, 2013 - 14:31:09
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Окт. 2012  


Помог: 0 раз(а)




при отправки комментария появляется сообщение: Warning: Cannot modify header information - headers already sent by (output started at Z:\home\projectrem\www\action.php:2) in Z:\home\projectrem\www\action.php on line 24.
хотя комментарий добавляется в бд.
я так понимаю hedear направляет на какую-то страница. у меня страницы строятся исходя из бд, т.е. есть одна страница которая может отображать информацию в зависимости от того, какая была выбрана строка из бд.
в адрес строке это выглядит так: projectrem/view_stati.php?id=1
как сделать чтобы после отправки комментария обновлялась страница, с которой он был отправлен?

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         include ("dbconnect.php");
  3.  
  4.         // получаем переменные из формы
  5.         $username=$_REQUEST['username'];
  6.         $msg=$_REQUEST['msg'];
  7.         $action=$_REQUEST['action'];
  8.        
  9.         if ($action=="add")
  10.         {
  11.                 // добавление данных в БД
  12.                 $sql="INSERT INTO gb(username, dt, msg) VALUES ('$username', NOW(), '$msg')";
  13.                 $r=mysql_query ($sql);
  14.         }
  15.        
  16.         if ($action=="delete")
  17.         {
  18.                 // удаление базы гостевой
  19.                 $sql="DELETE FROM gb";
  20.                 $r=mysql_query($sql);
  21.         }
  22.        
  23.         header("Location: index.php");
  24. ?>
 
 Top
LShark
Отправлено: 08 Января, 2013 - 15:59:54
Post Id



Частый гость


Покинул форум
Сообщений всего: 240
Дата рег-ции: Нояб. 2012  


Помог: 1 раз(а)




Такое сообщение бывает, когда ты второй раз отправляешь заголовок.

Особенно часто встречается, если используют сессии и команду session_start(); ставят не в самое начало.

ЛЮБОЙ, даже микроскопический, вывод в браузер сопровождается отправкой хедера. Ищи, где у тебя второй раз отправляется хедер.


-----
Истина прежде всего в том, что...
 
 Top
sKaa
Отправлено: 08 Января, 2013 - 16:31:37
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


Помог: 25 раз(а)

[+]


PHP:
скопировать код в буфер обмена
  1. if (headers_sent($filename, $linenum))
  2.    echo $filename . ' ' . $linenum;
 
 Top
Ghost_t91aa
Отправлено: 08 Января, 2013 - 17:14:33
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Окт. 2012  


Помог: 0 раз(а)




Решил проблему. у меня просто перед скобками php было: <meta http-equiv="content-type" content="text/html; charset=windows-1251" />

удалил ее, и header вверх поставил и все заработало.

вот этот ресурс помог: http://phpfaq[dot]ru/headers
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB