Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   не работает setcookie и header (https://forum.antichat.xyz/showthread.php?t=175883)

bomber 03.02.2010 16:35

не работает setcookie и header
 
парни, объясните мне кто-нибуть при каких условиях может не работать setcookie("kuki", 1, time() + 86000); и header("Content-Type: text/html;charset=utf-8");

на сервере стоит PHP/5.2.6-1+lenny4, какие-то непонятные проблемы с кодировкой, не могу выставить utf-8, из-за чего в IE выводятся крякозябли, в остальных браузерах норм :confused:

ntldr 03.02.2010 16:44

при условии что уже был какой-то вывод в тело страницы

DiHWO 03.02.2010 17:11

если у тебя файл начинаеться так:
Код:

всякая инва...скрипты
скрипт вывода чегонибудь
<? echo 'blablabla'; ?>
а потом
<? setcookie() ?>

то ничего не получиться, надо:
Код:

<? setcookie() ?>
всякая инфа блаблабла

тоесть setcookie() должен быть в самом начале.
Про кодировку:
Код:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

mr.The 03.02.2010 17:49

Цитата:

Про кодировку:
Тут нужно не забыть отключить BOM при сохранение файла в utf-8

bomber 03.02.2010 18:14

так и думал, что нужно уточнить, что перед этими параметрами нет вывода, но есть переменные, тоесть так не работает:

$a = 1;
setcookie("kukis", 1, time() + 86000);

а так работает:

setcookie("kukis", 1, time() + 86000);
$a = 1;

аналогично и с header, сам впервый раз с таким встречаюсь

все файлы в win-1251 и база тоже, просто в скрипте есть условие, если оно равно 1, то применяется:

header("Content-Type: text/html;charset=utf-8");

а для строк iconv, но что-то ни как не хочет выставлятся нужная кодировка и куки не ставятся

bomber 03.02.2010 18:17

так и думал, что нужно уточнить, что перед этими параметрами нет вывода, но есть переменные, тоесть так не работает:

$a = 1;
setcookie("kukis", 1, time() + 86000);

а так работает:

setcookie("kukis", 1, time() + 86000);
$a = 1;

аналогично и с header, сам впервый раз с таким встречаюсь

все файлы в ANSI и база в cp1251, просто в скрипте есть условие, если оно равно 1, то применяется:

header("Content-Type: text/html;charset=utf-8");

а для строк iconv, но что-то ни как не хочет выставлятся нужная кодировка и куки не ставятся

Krist_ALL 03.02.2010 18:22

Цитата:

$a = 1;
setcookie("kukis", 1, time() + 86000);

а так работает:

setcookie("kukis", 1, time() + 86000);
$a = 1;
такова быть не может.

bomber 03.02.2010 18:30

дубль

bomber 03.02.2010 18:50

Цитата:

Сообщение от Krist_ALL
такова быть не может.

ага, приврал малеха, перед эти еще идут вставки скриптов через require_once

если ставить куки перед вставкой файлов, то все работает, опять - :confused:

Krist_ALL 03.02.2010 18:51

значит в файлах есть вывод или пробел перед открытием дескриптjра <?php


Время: 21:39