2016-12-17 53 views
1

所以,我想選擇「註釋」基於「userID」。這就是我所做的如何使用angularjs從localStorage調用「用戶ID」變量到PHP?

使用angular.js調用PHP函數

$scope.dapatkanData = function(){ 
    $http.get(
     '../php/displayNotes.php' 
    ).success(function(data){ 
     $scope.notes = data; 
    }); 
}; 

創建displayNotes.php從數據庫中選擇數據,其中localStorage.getItem( 「ID」)

<?php 

    include('connect.php'); 

    $postdata = file_get_contents(localStorage.getItem('user')); 
    $dataObjek = json_decode($postdata); 

    $user = $dataObjek->userID; 
    $hashtype = "sha256"; 

    $userID = hash($hashType,$user); 

    $perintah_sql = "select * from notes where notesID='{$userID}'"; 

    $data = []; 

    $result = mysqli_query($koneksi,$perintah_sql); 
    while($row = mysqli_fetch_array($result)){ 
     $temp_data = []; 
     $temp_data['notesID'] = $row['notesID']; 
     $temp_data['notesNo'] = $row['notesNo']; 
     $temp_data['notesTitle'] = $row['notesTitle']; 
     $temp_data['notesContent'] = $row['notesContent']; 
     $temp_data['notesDate'] = $row['notesDate']; 

     array_push($data,$temp_data); 
    } 

    echo json_encode($data); 

?> 

但後來我沒有返回任何應用程序後,我不知道我現在應該做什麼...一直在尋找小時,但仍然沒有解決方案

回答

1

localStorage只是客戶端存儲。無論您或我或任何服務器無法訪問存儲在客戶端瀏覽器存儲上的內容。

你要麼需要設置值的cookie,這樣會將它與你的HTTP請求發送到服務器的每個請求或通過沿localStorage的值

你可能要發送的查詢參數

var req = { 
method: 'GET', 
url: 'displayNotes.php', 
data: { userID: 'test' } 
} 

$http(req).then(function(){...}, function(){...}); 

然後在你的displayNotes.php你必須將其更改爲這個

$postdata = file_get_contents($_GET['userID']); 

我也做一個更安全的檢查,因爲它可以更改爲
?userID=../db-config.json或類似的東西。您允許客戶讀取他們想要的任何文件

+0

任何想法該怎麼做? –

+0

我也嘗試過在javascript裏面使用localStorage,但是仍然沒有結果.... –

+0

你是否在某處存儲了**用戶**? – Endless