2017-08-08 26 views
0

我用laravel 5.3如何在本地存儲中獲取laravel上每次登錄的數據?

我設置在本地存儲的JavaScript像這樣我的數據:

localStorage.setItem('storedData', JSON.stringify(data)) 

每次用戶登錄,我想補充一個條件。如果存儲在本地存儲器中的數據存在,那麼我想要檢索該數據並將其保存在數據庫中

我該如何以簡單的方式做到這一點?

是否使用ajax?

+0

是的,你必須做到這一點使用AJAX,因爲(顧名思義)localStorage的是本地在客戶端上,並且必須被髮送到服務器以保存在數據庫中。你到目前爲止嘗試過什麼嗎? – Jerodev

+0

@Jerodev,還沒有。我仍然試着找出簡單的方法 –

+0

您需要向我們展示您的嘗試,我們在這裏回答技術問題,我們不會爲您編寫代碼。 – Joe

回答

0
$(document).ready(function() { 
    var checkStorage = storage.getItem('storedData'); 
    if (checkStorage) { 
     $.ajax({url: "dostuff.php", success: function(result){ 
      //DO STUFF 
     }}); 
    } 
}); 
+0

也許可以給出一些有關OP如何工作的信息。另外,OP沒有提到他使用jQuery。 – Jerodev

+1

這真的是自我解釋,沒有理由不使用jQuery –

0
  1. 設置您在localStorage的同時登錄值。
  2. 創建一個通用的js文件並將其包含在標題中(對於登錄後的所有頁面)。
  3. 內部的,

    $(document).ready(function() { 
    var myData = localStorage.getItem('storedData'); 
    if(myData == undefined || myData == ""){ 
        window.location = "/logout"; 
    } 
    else{ 
    //Do your ajax and send the data to controller 
    } 
    }); 
    
  4. 在加載登錄頁面清晰的localStorage的數據。

    localStorage.clear(); 
    

建議:

更好地使用這些類型的活動會議

0

本地存儲只能在客戶端使用javascript進行訪問,所以如果您想在服務器端使用會話或cookie(如果數據大小小於4kb)獲取數據。

如果你仍然想使用本地存儲比你必須編寫Ajax調用將數據發送到服務器

$(document).ready(function() { 
    var myData = localStorage.getItem('storedData'); 
    if(myData == undefined || myData == ""){ 
    } 
    else{ 
     $.ajax({url: "dostuff.php", 
     data:{data:myData }, 
     success: function(result){ 
      localStorage.clear(); 
     }}); 
    } 
    }); 
相關問題