Почему Не Работает Куки?

Тема в разделе "PHP программирование", создана пользователем BlackShadow, 28 фев 2012.

  1. BlackShadow

    BlackShadow Well-Known Member

    Регистрация:
    4 фев 2011
    Сообщения:
    111
    Симпатии:
    1
    Я тут наработал код по подтверждению емайла. Вот его содержимое:
    Код (PHP):
    <?php
    $pageName = "<b>Подтверждение почтового ящика</b>";
    $pageIco = "mail.png";
    ?>

    <?php include("title.inc")?>
    <center>
    <?php

    $log = base64_decode($_GET['log']);
    $par = $_GET['par'];

    $openMySQL = mysql_connect($server,$user);
    if ($openMySQL){

    $openDB = mysql_select_db($db,$openMySQL);
    if ($openDB){


    $sql = mysql_query("SELECT * FROM users");
    $count = mysql_num_rows($sql);

    $tableData = mysql_query("SELECT * FROM users", $openMySQL);
    for ($i=1; $i<=$count; $i++){

    $n = $i-1;
    $id = mysql_result($tableData,$n,"id");
    $nick = mysql_result($tableData,$n,"log");
    $pas = mysql_result($tableData,$n,"par");
    $act = mysql_result($tableData,$n,"activate");



    if ($nick == $log){
    if ($pas == $par){

    if ($act == 0){

    $checkCookie = setcookie("check","1"); // ВОТ ЭТО 39 СТРОКА, НА КОТОРУЮ ОН ЖАЛУЕТСЯ
    if ($checkCookie){

    $sql = "UPDATE users SET activate='1' WHERE id='$id'";
    $addData = mysql_query($sql);
    if ($addData){




    setcookie("check");
    setcookie("log",$log);
    setcookie("par",$par);
    setcookie("login","1");
    echo "E-mail успешно подтвержден! Нажмите на \"Авторизация\"";
    mysql_close($openMySQL);


    } else {
    echo "MySQL» Ошибка добавления данных!<br>";
    mysql_close($openMySQL);
    }

    } else {
    echo "Выключены куки! Включите их и перезагрузите эту страницу!";
    mysql_close($openMySQL);
    }


    } else {
    echo "Профиль уже активен!";
    mysql_close($openMySQL);
    }


    } // ЛОГИН ПАРОЛЬ
    }



    }


    } else {
    echo "MySQL» Открытие базы не удалось!<br>";
    mysql_close($openMySQL);
    }

    } else {
    echo "MySQL» Соединение прошло неудачно!<br>";
    mysql_close($openMySQL);
    }


    ?>
    </center>

    <?php include("titleend.inc")?>

    При запуске выдаёт такую ошибку:
     
  2. texnar6

    texnar6 Гость

    :) а прочитать ман совсем не судьба или хотя бы, что пишет ошибка?
    Cannot modify header information - headers already sent ::: Не могу изменить заголовок - заголовки уже отправлены

    Куки посылаються с хедерами, любой вывод, хоть одного символа - это уже тело(body), изучите устройство протокола HTTP!

    Незнаю, что у Вас в инклюде, но тег центер явно уже тело, а вы после пытаетесь куку поставить...
    Кстати этот тег являеться устаревшим, не рекомендуеться к использованию htmlbook.ru/html/center полноценная поддержка только на html 3.2 частичная на html 4.01 и вообще не поддерживаеться на html 5.0

    Учитесь работать с документацией, тем более на русском языке её более чем достаточно.
     
  3. BlackShadow

    BlackShadow Well-Known Member

    Регистрация:
    4 фев 2011
    Сообщения:
    111
    Симпатии:
    1
    Спасибо, я уже разобрался с проблемой
     
Загрузка...

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