Установить cookie в PHP-файле, который вызывается Jquery - PullRequest
0 голосов
/ 31 мая 2011

Я пытаюсь создать страницу подтверждения пользователя.Я вызываю PHP-файл с помощью Jquery $ .ajax (), который проверяет пользовательские данные и сохраняет некоторые данные cookie, но файл PHP не сохраняет данные cookie.Я предпочитаю делать таким образом, вместо того, чтобы сохранять куки через Jquery $ .cookie, потому что я не хочу, чтобы куки появлялись в коде javascript.Вот мой код:

validation.js:

$.ajax({
        type: 'POST',
        url: 'json_user_verify.php',
        data: $('#UserForm').serialize(),
        dataType: "json",
        cache: false,
        success: function(data) {   
            if(data.correct)
            {
                location.href='panel.php';
            }
            else
            {
                $('#PMessage').css('color','red');
                $('#PMessage').html(data.error);                        
            }
        },
        error: function(xhr,ajaxOptions,thrownError) {
            alert("Error!!!");
        }
    });

И это фрагмент кода PHP, в котором хранятся значения файлов cookie (я пропустил проверку пользователя, она работает хорошо).

user_cookie.php:

setcookie(
    "UserID",
    $userID,
    time()+(60*60*24*30),
    dirname($HTTP_SERVER_VARS['REQUEST_URI']));

$result["correct"]=true;

echo(json_encode($result));

Это первый раз, когда я пытаюсь выполнить проверку пользователя с помощью jQuery.Весь процесс проверки пользователя работает хорошо (доступ к БД, проверка, отправка формы и т. Д.).Я пробовал код PHP без jQuery, и куки тоже сохраняются правильно.Но когда я звоню через $ .Ajax (), куки не сохраняются (остальная часть процесса уже работает).

Спасибо за помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...