我開發使用HTML5(英特爾XDK)的移動應用程序,並用PHP編碼服務器端。在我的應用程序中,用戶可以將圖像從手機上傳到服務器。但是當我更改服務器端代碼來檢查是用戶用會話登錄時,會話變量返回null。我的代碼如下所示。使用XMLHttpRequest的與PHP會議
var par= new FormData(document.getElementById('form'));
var obj= new XMLHttpRequest();
...
obj.open('POST', 'url.com/upload.php');
obj.send(par);
而在服務器端代碼,我想檢查會話變量。
if($_SESSION['user_logged_in'] == 1)
我在SO搜索這個問題,但結果有一些問題。例如,在下面的帖子中,回答說會話ID必須保留在客戶端,但我認爲這不是一個好的解決方案,因爲安全問題。
是否有良好的iplementation這個問題? 在此先感謝。
編輯:我是在session_start,如果我在檢查移除記錄它的工作原理。我用Ajax調用的其他頁面會到達會話變量。我對安全性的懷疑是,我的會話ID將在源代碼中看到,這不是安全問題嗎?
你能檢查(使用提琴手,鉻工具等)是否會話cookie被與請求發送?你是否在upload.php的開頭調用了session_start()? – johnnycardy
傳遞會話ID應該不成問題。你認爲瀏覽器如何正常工作? – geedubb
@johnnycardy是的,我打電話會話開始。 – PepeDeLew