Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не отсылаются cookie
 
 автор: Киналь   (29.05.2005 в 08:34)
 
 


<?php
$login
=$_POST['login'];
if (!isset(
$_COOKIE['login'])) setcookie('login''$login'time()+1200)


Собственно сабж. Пишет, headers already sent, но приведен кусок кода, начиная сперввой строчки. Посоветуйте, в чем может быть дело? Заранее большое спасибо!

   
 
 автор: glsv (Дизайнер)   (29.05.2005 в 08:57)   письмо автору
 
   для: Киналь   (29.05.2005 в 08:34)
 

В коде все нормально. Может быть перед <?php есть пустые строки?
Замените одинарные кавычки на двойные вокруг переменной login в строке

<?
setcookie
('login''$login'time()+1200)
?>


<?
setcookie
('login'"$login"time()+1200)
?>

Иначе значение cookie будет не
$_COOKIE['login'] = "значение",
а
$_COOKIE['login'] = "$login",

   
 
 автор: Киналь   (29.05.2005 в 12:53)
 
   для: glsv (Дизайнер)   (29.05.2005 в 08:57)
 

Так в том-то все и дело, что нет пустых строк! Я привел код прямо начиная с первой строчки. Это может зависеть от настроек Денвера?
Насчет кавычек - прошу прощения, код по памяти писал, торопился.

   
 
 автор: cheops   (29.05.2005 в 13:02)   письмо автору
 
   для: Киналь   (29.05.2005 в 12:53)
 

Если код не сильно секретный - выложите его, мы бы протестировали его не на Денвере, тогда можно было бы локализовать проблему...

   
 
 автор: Киналь   (29.05.2005 в 18:07)
 
   для: cheops   (29.05.2005 в 13:02)
 

Это было бы просто великолепно! Большое вам спасибо!

PS Поскольку скрипт обрабатывает форму, в архиве еще и сама форма.

   
 
 автор: isset   (29.05.2005 в 18:13)   письмо автору
 
   для: Киналь   (29.05.2005 в 18:07)
 

Внимательно надо читать ошибку, php пишет что-то типа
Warning: Cannot add header information - headers already sent by (output started at script.php:3) on line 20

Вот где script.php:3 это имя скрипта и номер строки, где произошел вывод информации.

   
 
 автор: Киналь   (29.05.2005 в 18:41)   письмо автору
 
   для: isset   (29.05.2005 в 18:13)
 

Хм.. Это я, ессно, видел, но...
Вот эта строка, на которую указывает ошибка:

$avatar=$_FILES['avatar']['name'];  

   
 
 автор: cheops   (29.05.2005 в 22:53)   письмо автору
 
   для: isset   (29.05.2005 в 18:13)
 

Хм... а как вы это получили, у меня ничего кроме ошибки доступа к файлу trans.php, который не приложен к архиву не выводится, файла scritp.php тоже нет...

   
 
 автор: Киналь   (29.05.2005 в 23:08)   письмо автору
 
   для: cheops   (29.05.2005 в 22:53)
 

Я идиот. Я этот файл инлюдил к другому, а тот уже вызывал. И вот в этом-то, в который инклюдил, заголовки-то и отсылались. Прошу прощения за доставленные неудобства; э-эх, впредь буду внимательнее.

   
 
 автор: cheops   (29.05.2005 в 23:18)   письмо автору
 
   для: Киналь   (29.05.2005 в 23:08)
 

Хм... а вы используйте require_once и include_once вместо require и include - тогда файл будет включаться только один раз, сколько бы вызовов его не производилось.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования