У меня есть сайт, который я создаю, состоящий из основного интерфейса на domain.com (он еще не работает - так что, надеюсь, подробности не нужны). На сайте client.domain.com есть клиентский биллинговый сайт
Биллинговая система закодирована - у меня очень мало контроля над ней, но хороший API.
Я пытаюсь получить некоторую информацию из этой клиентской области через jQuery для отображения на внешнем интерфейсе. Удивительно, но это сработало всего два дня назад и прекратилось.
Jquery, который я использую, чтобы получить то, что мне нужно, прост:
$(document).ready(function(){
$.get("client/logincheck.php", function(data){
$('#dynamicsidebar').append(data);
});
});
Теперь - страница, которую я вызываю (logincheck.php), находится в клиентской области сайта. С точки зрения структуры каталогов, он находится под webroot внешнего интерфейса - в каталоге client /, поэтому я могу назвать его с относительным путем.
В настоящее время для целей отладки я просто включаю необходимые файлы с информацией для выставления счетов (в которую я успешно вошел). Затем я печатаю вывод массива $ _SESSION, который заполняется биллинговой системой (кодированный код), и затем выхожу:
Код для клиента / logincheck.php
require("dbconnect.php");
require("includes/functions.php");
require("includes/clientareafunctions.php");
print_r($_SESSION);
die();
Если я открою этот URL-адрес непосредственно в браузере (client.domain.com/logincheck.php) - я получу следующий вывод:
Array ( [calinkupdatecc] => 0 [calinkupdatesq] => 0 [uid] => 1 [upw] => a49de38fe12d325feb11bc9be1762482 [cainvorderby] => status [cainvsort] => DESC [cadomorderby] => domain [cadomsort] => ASC [caemailsorderby] => date [caemailssort] => DESC [caprodorderby] => product [caprodsort] => ASC )
Это то, что я ожидал.
Однако из внешнего интерфейса - к div добавлен только пустой массив:
Array()
Если jQuery работал, это должно быть (на данный момент, во всяком случае) - этот массив SESSION, не так ли?
В случае, если это уместно - в моем файле php.ini есть параметр session.cookie_domain - .domain.com.
Спасибо за любую помощь.
** РЕДАКТИРОВАТЬ **
Я заменил код в client / logincheck.php на:
if ($_SESSION['uid']) {
echo "Logged In";
} else {
echo "Not logged in";
}
die();
И теперь странная вещь - я перехожу на страницу напрямую и получаю вывод «Logged In» на экран. От внешнего интерфейса я получаю эхо-сообщение «Not Logged in».
Итак, как прямое посещение URL может показать действительный сеанс, но при использовании GET для извлечения страницы показать что-то еще?