В основном я ненавижу веб-сайт спутника, который включает form.php с совершенно другого сервера.PHP http включает не сохранение сеансов
<?php
include("http://blah.com/form.php");
?>
form.php на других сеансах нагрузок классов и всех видов других вещей, и генерирует форму динамически на основе тонны данных MySQL. Несущественны. Моя проблема заключается в том, что при вызове формы я также начинаю сеанс. Однако удаленный сервер на самом деле никогда не посещается клиентом. Сессия, где остановиться. Каждый раз, когда страница обновляется, старая сессия сбрасывается.
По этой причине мне нужно отправить обратно ошибки проверки в исходную форму и показать их. (Это массив таких вещей, как «Имя является обязательным полем»)
код на главном сервере выглядит примерно так ...
<?php
include("config.php"); // This is loading the config file with the session_start()
Process($id) {
// Do a bunch of form processing and store errors in $this->errors
$_SESSION['errors'] = $this->errors;
}
ShowForm($id) {
// This loads the form and everything.
echo '<div id="errors">'.print_r($_SESSION['errors']).'</div>'; // This is what is returning nothing on the other page.
}
?>
Так в основном, что скрипт вызывается с удаленного сайта , но сеансы не будут сохраняться и сбрасываться при обновлении ... Я предполагаю, потому что фактический главный сервер никогда не загружается в браузере пользователей.
Кто-нибудь знает способ об этом/способ исправить это? Или, возможно, другое решение? Все работает.
Thanks
Вы называете session_start() до того, как включить? Или это сеанс, запущенный внутри пульта? –
Да, конечно. Глобальный $ _SESSION устанавливается, но его пустой, а session_id возвращает идентификатор, но его изменение при каждом перезапуске. – sct
ошибка. обновить * не перезагружать, lol. – sct