2017-05-26 218 views
-2

login.js如何使用Angular登錄會話?

 $http({ 
 
       url: 'http://ipadress/login.php', 
 
       method: 'POST', 
 
       data: { 
 
       'var_id': $scope.form.txt_id, 
 
       'var_pass': $scope.form.txt_pass 
 
       } 
 
      }//http

的login.php

<?php 
session_start(); 
header("Access-Control-Allow-Origin: *"); 
header("Content-Type: application/json; charset=UTF-8"); 
mysql_connect("localhost","root","password"); 
mysql_select_db("db"); 
$data = file_get_contents("php://input"); 
$dataJsonDecode = json_decode($data); 

$var_id = $dataJsonDecode->var_id; 
$var_pass = $dataJsonDecode->var_pass; 


$sql = "SELECT * FROM user WHERE user_login = '".($id)."' and user_pass = '".md5($pass)."'"; 
$query = mysql_query($sql); 
$result = mysql_fetch_array($query); 

$resource = mysql_query($sql); 
$count_row = mysql_num_rows($resource); 

if (!$result) { 
    $results = '{"results":"not match"}'; 
} else { 
    $_SESSION["users_login"] = $result["users_login"]; 
    session_write_close(); 
    if($count_row > 0){ 
     $results = '{"results":"match"}'; 
    } else { 
     $results = '{"results":"Error"}'; 
    } 
} 
echo $results; 
?> 

$http.get('http://ipaddress/data_user.php') 
 
     .then(function (response) { 
 
     console.log(response.data.results); 
 
     $scope.myData = response.data.results; 
 
     }, function (error) { 
 
     console.log(error); 
 
     });

user_data.php

<?php 
session_start(); 
if($_SESSION['users_login'] == ""){ 
    $results = '{"results":"Please Login"}'; 
    echo $results; 
} 
else{ 
    mysql_connect("localhost","root","password"); 
    mysql_select_db("db"); 
    mysql_query("SET NAMES UTF8"); 
    $sql = "SELECT * FROM users WHERE users_login = '".$_SESSION["users_login"]."' "; 
    $query = mysql_query($sql); 
    $count_row = mysql_num_rows($query); 
    if($count_row > 0){ 
     while($result = mysql_fetch_array($query)){ 
      $rows[] = $result; 
     } 
     $data = json_encode($rows); 
     $totaldata = sizeof($rows); 
     $results = '{"results": '.$data.'}'; 
    } 
    echo $results; 
} 
?> 

我有登錄問題。我的$results = please login

+0

爲什麼你在這裏標記離子? –

+0

對不起,這是第一篇文章。 – Peerawat

+0

你能推薦我嗎? – Peerawat

回答

0

首先檢查什麼$result["users_login"]包含.. 你所得到的please login,因爲你沒有會話數據。

我不確定你的方法,但不要混合php會話和Ionic,你可以創建一種API來檢查你的離子應用程序的用戶憑證,或者在離子應用程序中處理它。
會話通常用於網站傳遞數據通過頁面,而不是API調用。想想場景10的用戶同時訪問您的應用程序,您將如何使用Session來驗證它們?

我的建議是,使用會話存儲
Read this,而不是使用PHP會話,您可以處理您的應用程序內的會話。有很多插件可用。或者你可以創建你的here
祝你好運!

+0

謝謝。爲推薦。 – Peerawat