[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: setcookie -> Cannot modify header information
Phentis
Суть проблемы в том, что в моём коде, когда я пытаюсь добавить пользователю кукисы после авторизации, вылетает сообщение об ошибке, Cannot modify header information...

Вот собственно сам код файла index.php:

PHP
<?

if (
$_POST['username']) {

require(
'funciones.php');
$username=uc($_POST['username']);
$password=uc($_POST['password']);

if (
$password==NULL) {
echo 
"неверный логин.";
}else{
require(
'common.php');
$query mysql_query("SELECT login,password FROM users WHERE login = '$username'") or die(mysql_error());
$data mysql_fetch_array($query);
if(
$data['password'] != $password) {
echo 
"неверный логин.";
}else{
$query mysql_query("SELECT login,password FROM users WHERE login = '$username'") or die(mysql_error());
$row mysql_fetch_array($query);
mysql_close($con);
$nicke=$row['username'];
$passe=$row['password'];

setcookie("usNick"$nicketime()+7776000);
setcookie("usPass"$passetime()+7776000);

$lastlogdate=date("Y-m-d h:i:s");
$lastip getRealIP();
require(
'common.php');
$querybt "UPDATE users SET lastlogdate='$lastlogdate', lastiplog='$lastip' WHERE login='$nicke'";
mysql_query($querybt) or die(mysql_error());
mysql_close($con);

?>

<META HTTP-EQUIV="REFRESH" CONTENT="20;URL=profile.php">

<?
}
}
}else{
?>
<? 
include('header.php'); ?>

                                

<br><br>


<div align="center"><div id="form">
<form action='index.php' method='POST'>

<table width="400" border="0" align="center">
  <tr>
    <td width="150" align="left"><p><label>Имя</label></p></td>
    <td width="250" align="left"><input type='text' size='15' maxlength='25' name='username' autocomplete="off"value="" tabindex="1" /></td>
  </tr>
  <tr>
    <td width="150" align="left"><p><label>Пароль</label></p></td>
    <td width="250" align="left"><input type='password' size='15' maxlength='25' name='password' autocomplete="off" value="" tabindex="2" /></td>
  </tr>


  <tr>
    <td width="150" align="left">&nbsp;</td>
    <td width="250" align="right"><input type="submit" value="Вход" class="submit" tabindex="4" />
    </td>
  </tr>
</table>
</form>
</div></div>




<? include('footer.php'); ?>
<?
}


Помогите плс решить проблему, буду очень благодарен!



Спустя 12 минут, 34 секунды (19.05.2009 - 20:26) Kuliev написал(а):

Спустя 1 год, 5 месяцев, 11 дней, 2 часа, 23 минуты, 19 секунд (30.10.2010 - 22:50) Neuren написал(а):
та же самая тема, часов 5 долюблюсь, никакого результата. Перечитал форум, главные проблемы - либо символы до/после пхп кода, либо БОМ. В результате попробовал со х ранять в PHPExpert, Notepad 2 (поставив кодировку UTF8), AkelPad (там даже есть в ыб о р при сохранении в utf8 "без БОМ"). Потом скачал тут же с форума пр огр амку для удаления БОМов "utf8_bom_remover", оно показывает, что бомо в не т. Кусок кода уже тупо скатан с учебника:

<html>
<
head>
<
title>30.10.10</title>
</
head>
<
body>
<?php
if(!isset($_COOKIE['username'])) {
setcookie ("username", "denis", time()+36000 );
}
else echo $_COOKIE['username'];
?>
</body>
</
html>


от себя только дату втулил в тайтл. Показывает

Warning: Cannot modify header information - headers already sent by (output starte d at Z:\home\st\www\006.php:6) in Z:\home\st\ w w w \006.php on line 8

но в строке 6 идет "<?php" и там нет пробелов, и бомремувер не видит БОМов, и пересохранял я другими редакторами, вон в том же акельпаде есть функция & quot;без бом". Запускаю на локальном Denwer3_Base_2010-03-18_a2.2.4_p 5.3. 1_m 5.1 .40_pma3.2.3. Проверял через ПХПЕкспертЕдитор и Оперу.

СОС. ohmy.gif

Спустя 4 минуты, 54 секунды (30.10.2010 - 22:54) ИНСИ написал(а):
Цитата
Phentis
Читай тут и все поймешь

Ребята, там очень доходчиво написано! Один из абзацев:
Для решения этой проблемы нужно функцию header() (или session_start(), setcookie) и всю логику, которая ее вызывает, поместить ДО любого вывода в броузер.

Спустя 1 час, 25 минут, 20 секунд (31.10.2010 - 00:20) Игорь_Vasinsky написал(а):
простыми словами - в начале страницы - в САМОМ (до html даже), без пустых строк, но если там session_start() - то решение другое

Спустя 3 часа, 20 минут, 7 секунд (1.11.2010 - 04:40) Neuren написал(а):
блин, я думал оно обязательно должно быть внутри body :-/. Спасибо огромное, эту ночь я буду спать спокойно.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.