基本上我討厭一個衛星網站,其中包括一個完全不同的服務器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.
}
?>
所以基本上是腳本從遠程站點叫,但會話將不會保存並在刷新時拋棄......我假設它是因爲實際的主服務器永遠不會加載到用戶瀏覽器中。
有沒有人知道解決這個問題的方法/解決方法?或者可能有其他解決方案?任何工作。
謝謝
你之前,包括調用session_start()的?或者是在遠程包含內部啓動的會話? – 2010-05-05 18:01:23
當然可以。 $ _SESSION全局設置正在設置,但其空和session_id正在返回id,但在每次重新啓動時都會更改。 – sct 2010-05-05 18:02:31
犯錯。刷新*不重新啓動,哈哈。 – sct 2010-05-05 18:02:56