javascript — проблема с сессией PHP, не работает в 100% случаев

У меня действительно странная проблема, сессия PHP иногда возвращает неопределенный индекс, но не всегда. Я не знаю, была ли у кого-то подобная проблема, я не сильно изменился относительно начала сессии. Я также проверил доступное дисковое пространство, и это, кажется, хорошо для данных сеанса. У кого-нибудь был подобный опыт?

<?php

session_start();
include_once "security_mobile.php";
include "session.php";
switch($var)
{
case "get_name":
echo $securitymob->get_name();
exit;
}
?>

Security_mobile.php

function get_name(){
return $_SESSION['customer']['name'];
}

Это то место, где первое неопределенное происходит с клиентом, после чего оно не будет работать ни с кем другим. но иногда это работает, что меня беспокоит!

Обновление в выпуске

Я могу решить эту проблему, как только уберу это из своего приложения, однако мне нужно, чтобы это работало.

connection.js

 var getdb = Ti.Network.createHTTPClient({
onload : function(e) {
var response = this.responseText;
Ti.App.Properties.setString('tempDB', response);
},
onerror : function(e) {
failed(e);
},
timeout : 5000,
validatesSecureCertificate : false
});
getdb.open('POST', this.url, true);
getdb.send({
'action' : 'get_name',
'device' : 'mobile'
});

это может быть связано с возвращением $_SESSION['customer']['name'],
$_SESSION['customer']['name'] используется на этапе входа в систему.

2

Решение

Ответ состоял в том, что запрос клиента HTTP отправлялся быстро, это не давало времени для установления соединения и данных сеанса, поэтому, почему результаты там прерывистые. Чтобы решить эту проблему, я должен был выполнить следующий HTTP-клиент, как только первый закончил. Смотрите этот другой ответ для более подробной информации.

https://stackoverflow.com/a/39877622/6371663

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]