Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2009, 21:35   #1
L_M
Форумчанин Подтвердите свой е-майл
 
Регистрация: 25.02.2008
Сообщений: 289
По умолчанию Сессии

У меня какая-то проблема с сессиями - не создабтся, при этом есть предупреждение, что не может отправить куки. Это если открывать через браузер, используя локальный сервер Apache. Если запустить код в отладчике (phpED), то все проходит нормально, правда куки так и не шлются. Сама - то проблема в том, что не создается переменные сессии (а в отладчике все ок). Не знаю, что делать. Посоветуюте.
Упс...
L_M вне форума Ответить с цитированием
Старый 06.06.2009, 00:01   #2
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Хочу подчеркнуть одну вещь. Coockie нужно слать только в начале работы скрипта перед HTML кодом. Возможно вы их шлете позже. Пришлите пожалуйста программный код с помощью которого вы работаете с куками.
profi вне форума Ответить с цитированием
Старый 06.06.2009, 10:03   #3
L_M
Форумчанин Подтвердите свой е-майл
 
Регистрация: 25.02.2008
Сообщений: 289
По умолчанию

В том то и дело, что куки я явно не использую.
Код:
<html>
<?php
    session_start();
    if (isset($_SESSION['rrr']))
    {
        if ($_SESSION['rrr']=="a")
            print "<p size=20><b>Autorization</b></p>";
        else
            print "<p size=20><b>Registration</b></p>";
    }
    else
    {
        $_SESSION['rrr']="a";
        print "<p><b>Autorization</b></p>";  
    }
    $action=$_POST['action'];
    if (!empty($action))
    {
        print "<p>ok</p><br>";
        $name=substr($HTTP_POST_VARS['name'],0,32);
        $password=substr($HTTP_POST_VARS['password'],0,32);
        $reg=$_SESSION['rrr'];
        $name=trim($name);
        $password=trim($password);
        if ((!empty($name))&&(!empty($password)))
        {
            $db_name="people";
            $table_name="users";
            $base=@mysql_connect("localhost") or die("error connections");
            $news_base=@mysql_select_db($db_name) or die("database not found");
            $query="SELECT * FROM $table_name";
            $result=@mysql_query($query);
            $idd=mysql_num_rows($result);
            $idd++;
            $query="SELECT name FROM $table_name WHERE name='$name'";
            $result=@mysql_query($query);
                 if ((mysql_num_rows($result)==0)&&($reg=="a"))
                 {
                    print "<html><head> \n";
                    print "<META HTTP-EQUIV=refresh content=0 URL=news.php \n";
                    print "<p>This name falled. Registered please.</p>";
                    print "</head></html> \n";
                    $_SESSION['rrr']="r";
                    $reg="r";
                    exit;
                 }
                 if (((mysql_num_rows($result)!=0)&&($reg=="r")))
                 {
                    print "<html><head> \n";
                    print "<META HTTP-EQUIV=refresh content=0 URL=news.php \n";
                    print "<p>This name falled</p>";
                    print "</head></html> \n";
                    exit;
                 }
                 if ($reg=="r")
                 {
                     $query="INSERT INTO $table_name VALUES ($idd,'$name','$password',99)";
                     $result=@mysql_query($query);

                 }
                 $_SESSION['username']=$name;
                 unset($_SESSION['rrr']);
            }

            @mysql_close($base);
            print "<html><head> \n";
            print "<META HTTP-EQUIV=refresh content=0 URL=news.php \n";
            print "</head></html> \n";
        }
    else
    {
?>
            <head>
                <title>Äîáàâèòü íîâîñòü</title>
            </head>
            <body>
                <form action="add_1.php" method="post">
                    <input type=hidden name=action value=post>
                    <input type=text name=name maxlength=32 value='<?php echo $name; ?>'><br>
                    <input type=text name=password maxlength=32 value='<?php echo $password; ?>'><br>
                    <input type=submit value=Äîáàâèòü>
                </form>
            <?php if (isset($_SESSION['username']))
                echo $_SESSION['username'];?>
            </body>
        </html>
</html>
<?php
    }
?>
При использовании сессии пишет, что не отпр. куки. (на session_start()
Упс...
L_M вне форума Ответить с цитированием
Старый 06.06.2009, 10:27   #4
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Так session_start() должна отправить cookie в http заголовке, а тут уже "<html>" отправлено.
Somebody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сессии + форма входа spein PHP 13 27.03.2009 18:18
Окончание сессии Neymexa Свободное общение 32 17.02.2009 13:45
Ajax и сессии ADSoft PHP 7 23.01.2009 17:10
Сессии limon PHP 19 29.11.2008 22:46
Расскажите про сессии Pusher PHP 3 21.02.2008 03:10