1. Спонсор публикаций Marketplace codeby. Сервис, который так долго ждали. При расчетах используем биткоин. Первый товар уже в продаже: Консультация на тему ИБ от Ondrik8

    Скрыть объявление
  2. Спонсор публикаций Marketplace codeby. Сервис, который так долго ждали. При расчетах используем биткоин. Второй товар маркетплейса: Надёжная обфускация вашей программы от PingVinich

    Скрыть объявление

Cookie

Тема в разделе "PHP программирование", создана пользователем Vadik(R), 27 июн 2008.

  1. Vadik(R)

    Vadik(R) Well-Known Member

    Репутация:
    0
    Регистрация:
    12 дек 2007
    Сообщения:
    470
    Симпатии:
    0
    Люди, вот здесь прочитал статью о том, как работать с cookie в php. Только одно не понятно: там говорится, что нельзя выдавать текст перед установкой куков, так как будет путаница с заголовками. Но как ни странно, у меня работает все нормально и текст выдается перед куками, и куки ставяться после вывода текста. Так вот хотел спросить от чего это зависит: от сервера или от браузера. Просто если от сервера, то я смогу сократить php-файл, потому-что мне не придеться в if'ах писать двадцать раз один и тот же код. А если зависит от браузера, то тогда лучше создам функцию.
     
  2. etc

    etc Гость

    Репутация:
    0
    Про какие ифы речь?
    Куки уходят в заголовке (header), заголовок должен уходить перед контентом, вся примудрость.
     
  3. Vadik(R)

    Vadik(R) Well-Known Member

    Репутация:
    0
    Регистрация:
    12 дек 2007
    Сообщения:
    470
    Симпатии:
    0
    Код (Text):
    123
    <?php
    echo "456";
    if (!$_COOKIE["counter"]) {
    setcookie("counter", "1");
    echo "0";
    ?>
    какой-то текст
    куки поставлены сейчас
    <?php
    } else {
    setcookie("counter", $_COOKIE["counter"]+1);
    echo $_COOKIE["counter"];
    ?>
    какой-то текст
    куки уже были поставлены раньше
    <?php
    }
    ?>
    Объясняю, что к чему. 123 я пишу простым способом, 456 с помощью echo, потом ставлю куки, и они ставяться нормально и никакой ошибки не возникает. Вот я и спрашиваю, почему ошибку не возникает: потому что у меня IE 7.0 или потому что Apache 2 и php 5?
    А про иф дело в том, что у меня "какой-то текст" на самом деле очен длинный и часто повторяющийся, поэтому я хочу страницу написать так:
    Код (Text):
    какой-то текст, одинаковые мета-теги
    <?php
    if (!$_COOKIE["counter"]) {
    setcookie("counter", "1");
    echo "0";
    ?>
    куки поставлены сейчас
    <?php
    } else {
    setcookie("counter", $_COOKIE["counter"]+1);
    echo $_COOKIE["counter"];
    ?>
    куки уже были поставлены раньше
    <?php
    }
    ?>
    И беспокоюсь за то, что бы у все людей все отображалось нормально.
     
  4. etc

    etc Гость

    Репутация:
    0
    А что говорят в документации?
    Да какая разница какой текст, делайте как указано и проблем не будет.
    Вы же даже сабжевую статью не прочитали, там же не ошибка а варнинг, а варнинги можно и отключить, что скажется только на варнинге, а не на результате.
     
Загрузка...

Поделиться этой страницей