header("Content-Type: text/html; charset=utf-8");
Почему выдает ошибку ?
Warning: Cannot modify header information - headers already sent by (output started at)
Спустя 1 минута, 46 секунд (6.10.2012 - 23:29) redreem написал(а):
либо до заголовка уже был вывод контента, либо файлы в кодировке utf-8 с BOM
Спустя 4 минуты, 45 секунд (6.10.2012 - 23:34) Начинающий написал(а):
Цитата (redreem @ 6.10.2012 - 23:29) |
либо до заголовка уже был вывод контента, либо файлы в кодировке utf-8 с BOM |
Да файл в кодировке utf-8 без BOM
Спустя 13 минут, 48 секунд (6.10.2012 - 23:48) Начинающий написал(а):
А какую кодировку надо ?

Спустя 9 минут, 49 секунд (6.10.2012 - 23:58) redreem написал(а):
utf-8 без BOM. Если будет с BOM, то BOM-байты для php интерпретатора являются контентом для вывода и он их отдает браузеру до заголовка.
Спустя 10 минут (7.10.2012 - 00:08) Начинающий написал(а):
redreem вот что еще сейчас заметил
Тоже выдает ошибку , значит проблема в настройках php.ini ?
header('location: http://'. $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
Тоже выдает ошибку , значит проблема в настройках php.ini ?
Спустя 9 минут, 54 секунды (7.10.2012 - 00:18) dron4ik написал(а):
какая ошибка?
Спустя 10 минут, 7 секунд (7.10.2012 - 00:28) Начинающий написал(а):
dron4ik Warning: Cannot modify header information - headers already sent by (output started at Z:\home\fd-games.loc\www\index.php:9) in Z:\home\fd-games.loc\www\index.php on line 51
Спустя 7 минут, 1 секунда (7.10.2012 - 00:35) rooor написал(а):
У тебя заголовки посылаются после вывода контента
Нужно сначала все заголовки послать, потом уже показывать содержание страницы
UPD:
Нужно сначала все заголовки послать, потом уже показывать содержание страницы
UPD:
Цитата |
(output started at Z:\home\fd-games.loc\www\index.php:9) in Z:\home\fd-games.loc\www\index.php on line 51 |
вывод чего-то в 9 строке, а заголовок ты посылаешь в 51
Спустя 5 минут, 39 секунд (7.10.2012 - 00:40) Начинающий написал(а):
rooor Все я понял , спс
просто об этом рассказывается тут http://irbis-team.com/15/5/4 чет до меня и сразу не дошло


Спустя 3 минуты, 51 секунда (7.10.2012 - 00:44) Начинающий написал(а):
rooor хм... что то все равно тоже самое

Спустя 3 минуты, 28 секунд (7.10.2012 - 00:48) Начинающий написал(а):
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Гостевая книга</title>
</head>
<body>
<?php
error_reporting(E_ALL);
$text1 = !empty($_POST['text1']) ? $_POST['text1'] : null;
$text2 = !empty($_POST['text2']) ? $_POST['text2'] : null;
if(isset($_POST['ok']))
{
if(!$text1)
echo 'Текстовое поле не заполнено.';
elseif(!$text2)
echo 'Текстовая область не заполнена.';
else
{
file_put_contents('text.txt', $text2, FILE_APPEND);
header('location: http://'. $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
exit();
}
}
else
echo 'Напишите что-нибудь';
?>
<form action="?" method="POST">
Логин:<br />
<input name="text1" type="text" value="<?php echo htmlspecialchars($text1) ?>"/><br />
Сообщение:<br />
<textarea name="text2" cols="40" rows="10"><?php echo htmlspecialchars($text2);?></textarea><br />
<input name="ok" type="submit" />
</form>
<?php
if(file_exists('text.txt'))
echo nl2br(htmlspecialchars(file_get_contents('text.txt')));
?>
</body>
</html>
Спустя 3 минуты, 18 секунд (7.10.2012 - 00:51) dron4ik написал(а):
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Гостевая книга</title>
</head>
<body>
это и есть вывод...
header('location: http://'. $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
должно быть до любого HTML или echo
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Гостевая книга</title>
</head>
<body>
это и есть вывод...
header('location: http://'. $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
должно быть до любого HTML или echo
Спустя 2 минуты, 48 секунд (7.10.2012 - 00:54) Начинающий написал(а):
dron4ik А почему тогда вот этот код тоже ошибку выдает ?
вот в этом месте
<?php
/**
* The guest book
* Гостевая книга
* @author IT studio IRBIS-team
* @copyright © 2009 IRBIS-team
*/
/////////////////////////////////////////////////////////
/**
* We establish the charset and level of errors
* Устанавливаем кодировку и уровень ошибок
*/
header("Content-Type: text/html; charset=utf-8");
error_reporting(E_ALL);
?>
<form action="" method="post">
<input name="text" type="text" /><br />
<input name="ok" type="submit" />
</form>
<?php
$text = !empty($_POST['text'])?$_POST['text']:null;
echo $text;
вот в этом месте
header("Content-Type: text/html; charset=utf-8");
Спустя 2 минуты, 8 секунд (7.10.2012 - 00:56) dron4ik написал(а):
Цитата (Начинающий @ 6.10.2012 - 21:54) |
dron4ik А почему тогда вот этот код тоже ошибку выдает ? |
потому что header идет до любого html или операторов вывода!!!
Спустя 1 минута, 15 секунд (7.10.2012 - 00:57) dron4ik написал(а):
Понимаешь что значит ДО?
Когда пошла выдача контента заголовки не передаются, ибо все должно быть по порядку...
Когда пошла выдача контента заголовки не передаются, ибо все должно быть по порядку...
Спустя 31 секунда (7.10.2012 - 00:58) rooor написал(а):
Начинающий
потому что этот скрипт инклудится из другого?
потому что этот скрипт инклудится из другого?
Спустя 2 минуты, 49 секунд (7.10.2012 - 01:01) Начинающий написал(а):
rooor нет , нету не require, не include
Спустя 1 минута, 11 секунд (7.10.2012 - 01:02) Начинающий написал(а):
dron4ik нет я ток учусь
как написано на ирбисе так и делаю и вот ошибки , мне все таки кажется что в настройках что то


Спустя 1 минута, 33 секунды (7.10.2012 - 01:03) dron4ik написал(а):
Цитата (Начинающий @ 6.10.2012 - 22:02) |
dron4ik нет я ток учусь ![]() ![]() |
в настройках все ок... в тексте ошибки все написано... гугл подтвердит!!!
Спустя 3 минуты, 2 секунды (7.10.2012 - 01:06) Начинающий написал(а):
dron4ik вот посмотрите сюда http://irbis-team.com/15/5/2 Это урок по этой гостевой книге , сразу выдал ошибку на
header("Content-Type: text/html; charset=utf-8");Я решил обойти эту ситуацию и вставил шаблон html а теперь нужно перенапровление на эту же страницу и опять ошибка :(
Спустя 3 минуты, 22 секунды (7.10.2012 - 01:10) rooor написал(а):
Какая ошибка? Дословно
Спустя 2 минуты, 12 секунд (7.10.2012 - 01:12) dron4ik написал(а):
что-то не так сделал... не может там быть ошибки...
Спустя 39 секунд (7.10.2012 - 01:13) Начинающий написал(а):
rooor
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\fd-games.loc\www\index.php:1) in Z:\home\fd-games.loc\www\index.php on line 15
<?php
/**
* The guest book
* Гостевая книга
* @author IT studio IRBIS-team
* @copyright © 2009 IRBIS-team
*/
/////////////////////////////////////////////////////////
/**
* We establish the charset and level of errors
* Устанавливаем кодировку и уровень ошибок
*/
header("Content-Type: text/html; charset=utf-8");
error_reporting(E_ALL);
?>
<form action="" method="post">
<input name="text" type="text" /><br />
<input name="ok" type="submit" />
</form>
<?php
$text = !empty($_POST['text'])?$_POST['text']:null;
echo $text;
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\fd-games.loc\www\index.php:1) in Z:\home\fd-games.loc\www\index.php on line 15
Спустя 1 минута, 1 секунда (7.10.2012 - 01:14) Начинающий написал(а):
Начинающий Я тоже думал что опичатался или еще что то , потом тупо скопировал от туда и все равно ошибка
Спустя 46 секунд (7.10.2012 - 01:14) dron4ik написал(а):
этот файл инклюдится?
Спустя 48 секунд (7.10.2012 - 01:15) rooor написал(а):
у тебя до <?php стоит пробел или ещё что-то, поэтому и ошибка
Спустя 56 секунд (7.10.2012 - 01:16) dron4ik написал(а):
Цитата (rooor @ 6.10.2012 - 22:15) |
у тебя до <?php стоит пробел или ещё что-то |
точняк...... или перенос строки... в 1 строке трабла
Спустя 1 минута, 18 секунд (7.10.2012 - 01:17) Начинающий написал(а):
dron4ik нет у меня в папке www на сервере денвер , только один файл index.php
А вот этот скрипт работает нормально
А этот :
выдает ошибку
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\fd-games.loc\www\index.php:1) in Z:\home\fd-games.loc\www\index.php on line 15
А вот этот скрипт работает нормально
<?php
/**
* The guest book
* Гостевая книга
* @author IT studio IRBIS-team
* @copyright © 2009 IRBIS-team
*/
/////////////////////////////////////////////////////////
/**
* We establish the charset and level of errors
* Устанавливаем кодировку и уровень ошибок
*/
header("Content-Type: text/html; charset=utf-8");
error_reporting(E_ALL);
/////////////////////////////////////////////////////////////////
// VARIABLES
// ПЕРЕМЕННЫЕ
/////////////////////////////////////////////////////////////////
$text1 = !empty($_POST['text1']) ? $_POST['text1'] : null;
$text2 = !empty($_POST['text2']) ? $_POST['text2'] : null;
$info = array();
/////////////////////////////////////////////////////////////////
// SCRIPT
// СКРИПТ
/////////////////////////////////////////////////////////////////
if(isset($_POST['ok']))
{
// Собираем ошибки в массив (если они есть)
if(!$text1)
$info[] = 'Текстовое поле не заполнено.';
if(!$text2)
$info[] = 'Текстовая область не заполнена.';
// Если массив ошибок пуст,
if(count($info) == 0)
{
// пишем файл
file_put_contents('text.txt', $text2, FILE_APPEND);
// и перенаправляем браузер на новую страницу
header('location: http://'. $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
// Останавливаем скрипт (все равно браузер уже ушел)
exit();
}
}
else
$info[] = 'Напишите что-нибудь';
/////////////////////////////////////////////////////////////////
// VIEW
// ОТОБРАЖЕНИЕ
/////////////////////////////////////////////////////////////////
?>
<form action="?" method="post">
Логин:<br />
<input name="text1" type="text" value="<?php echo htmlspecialchars($text1) ?>"/><br />
Сообщение:<br />
<textarea name="text2" cols="40" rows="10"><?php echo htmlspecialchars($text2);?></textarea><br />
<input name="ok" type="submit" />
</form>
<?php
// Выводим служебную информацию, "склеивая" элементы массива через разделитель <br/>
echo implode('<br>', $info) .'<br>';
if(file_exists('text.txt'))
echo nl2br(htmlspecialchars(file_get_contents('text.txt')));
А этот :
<?php
/**
* The guest book
* Гостевая книга
* @author IT studio IRBIS-team
* @copyright © 2009 IRBIS-team
*/
/////////////////////////////////////////////////////////
/**
* We establish the charset and level of errors
* Устанавливаем кодировку и уровень ошибок
*/
header("Content-Type: text/html; charset=utf-8");
error_reporting(E_ALL);
?>
<form action="" method="post">
<input name="text" type="text" /><br />
<input name="ok" type="submit" />
</form>
<?php
$text = !empty($_POST['text'])?$_POST['text']:null;
echo $text;
выдает ошибку
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\fd-games.loc\www\index.php:1) in Z:\home\fd-games.loc\www\index.php on line 15
Спустя 1 минута, 23 секунды (7.10.2012 - 01:19) Начинающий написал(а):
dron4ik точно есть такое дело , пробел стоит убрал все заработало
Спасибо


Спустя 7 часов, 10 минут, 20 секунд (7.10.2012 - 08:29) johniek_comp написал(а):
Начинающий
данная ошибка 100600 раз уже обсуждалась, нельзя было прогуглить? ясно же сказано, никакого вывода до отправки заголовков!
данная ошибка 100600 раз уже обсуждалась, нельзя было прогуглить? ясно же сказано, никакого вывода до отправки заголовков!
Спустя 5 часов, 5 минут (7.10.2012 - 13:34) Начинающий написал(а):
johniek_comp Если ты такой умный , то я недавно изучаю php , что то неустраивает закрой глаза и не смотри , для чего этот форум , чтоб ты мне говорил при каждой ошибке про гугл ?
Спустя 1 час, 2 минуты, 2 секунды (7.10.2012 - 14:36) inpost написал(а):
Начинающий
Ты разве не знал, что у любого форума есть УСТАВ? Правила, вот открываем правила и читаем: http://phpforum.ru/index.php?act=boardrules
Пункт: 2.3.b: прежде, чем задать вопрос, воспользуйтесь поиском - убедитесь, что подобный вопрос не обсуждался ранее.
Ты пробовал воспользоваться поиском по форуму? Или ты НАРУШАЕШЬ ПРАВИЛА?
Ты разве не знал, что у любого форума есть УСТАВ? Правила, вот открываем правила и читаем: http://phpforum.ru/index.php?act=boardrules
Пункт: 2.3.b: прежде, чем задать вопрос, воспользуйтесь поиском - убедитесь, что подобный вопрос не обсуждался ранее.
Ты пробовал воспользоваться поиском по форуму? Или ты НАРУШАЕШЬ ПРАВИЛА?
Спустя 2 часа, 43 минуты, 48 секунд (7.10.2012 - 17:20) johniek_comp написал(а):
Начинающий
а ты не хочешь получать советов профессионала?
а ты не хочешь получать советов профессионала?