Я создал страницу входа в Phonegap. Логин с базой данных работает нормально, но когда я пытаюсь создать переменные сеанса в PHP не устанавливается. Это происходит только локально (phonegap), если я пытаюсь запустить сервер нормально.
Это мой ajax скрипт:
var xhr = new XMLHttpRequest();
xhr.open('POST', url, true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
var res = JSON.parse(xhr.responseText);
console.log(res);
if(callback && res.status != 9){ // status = 9 means session start but not set
callback(res);
} // END IFs
else {
localStorage.clear();
app.checkUser();
} // END ELSE
} // END IF
} // END FUNCTION
Это мой PHP:
session_start();
$user = $_POST['user'];
$name= $_POST['name'];
$data->session_status = session_status(); // this is to check if session start
$_SESSION['user'] = $user;
$_SESSION['name'] = $name;
$data->id_session = $session_id();
$data->session = $_SESSION; // check if session sets ok
echo json_encode($data);
Но если я вызову другой php скрипт. Это не перезапустить предыдущий сеанс
$user = $_POST['user'];
$id_session = $_POST['id_session'];
session_start();
if($user == $_SESSION['user'] && $id_session == session_id()) {
// do somthing...
}
else {
data->status = 9;
}
echo json_encode($data);
И это мой набор заголовков htaccess:
Header set Access-Control-Allow-Origin: * // to accept phonegap request