Как исправить ошибку с header?

Есть скрипт авторизации на сайте. После того как заполняю поля логин:пароль и нажимаю кнопку войти, мне выдает след.ошибку

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\dlj.ru\www\style\main.php:26) in Z:\home\dlj.ru\www\data\auth.php on line 17

17 строка auth.php.
setcookie("CookieMy", $row['login'], time()+60*60*24*10);	//ставим куки и время их хранения 10 дней


На 26 строке main.php тег открытия php (<?php). До этого тега идет:
<?php session_start(); 
require_once ("../data/dbconnect.php"); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
<link media="screen" href="../style/css/bootstrap.css" type="text/css" rel="stylesheet" />
<link media="screen" href="../style/css/bootstrap.min.css" type="text/css" rel="stylesheet" />
<link media="screen" href="../style/css/style.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="../style/js/bootstrap.js"></script>
<script type="text/javascript" src="../style/js/bootstrap.min.js"></script>
</head>
<body>
<div class="wrapper">
<div id="header" class="dpad">
<a class="thide header-logo" href="/">RUST-CMS</a>
<div class="headlinks">
</div>
</div>
<div class="shadlr"><div class="shadlr">
<div class="container">
<div class="vsep">
<div class="vsep">
<div id="midside" class="rcol">
<div class="clr"></div>


Самое интересное, что после перезагрузки страницы с ошибкой, она исчезает и все становится нормально.
  • Вопрос задан
  • 3052 просмотра
Пригласить эксперта
Ответы на вопрос 3
@cloud-habr
первый класс вторая четверть )))
1. ob_start(); до вывода
2. юзайте кодировку utf-8 без bom
3. при большом количестве инклюде проверяйте каждый скрипт перед подключением (hex editor в помощь проверяем области до<?php)
Ответ написан
jakulov
@jakulov
Миллион ответов можно нагуглить по "Cannot modify header information - headers already sent by"
У вас есть символы в файлу main.php до открывающего тега, часто дело в кодировке файла.

Что тут еще добавить vk.com/jakulov?z=photo12526981_321876307%2Fwall214...
Ответ написан
morozovdenis
@morozovdenis
проверте что бы у всех файлов была кодировка UTF-8 и что нет символов во всех подключаемых файлах перед <?php

update:
и header-ы должны модифицироваться до первого output-а
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы