簡體   English   中英

Angular JS $ http.get無法從PHP腳本接收數據

[英]Angular JS $http.get does not receive data from PHP script

我正在使用angular的$ http.get函數來調用PHP腳本文件以檢索數據

var $promise = $http.get("../php-bin/example.php",obj).success(function(data) {

              console.log(data);
            });

PHP應該只是從mysql數據庫中獲取數據,以找出一種將數據獲取到我的應用程序中的方法

$user = json_decode(file_get_contents('php://input'));
$email = $user->email;
$pass = $user->pass;

$con = //a mysql_connection;
// Check connection
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
}

$validateEmail = "SELECT `Email` FROM `newUsers` WHERE `Email` = '$email' ";

if ($result = mysqli_query($con,$validateEmail)) {
     if ($result->num_rows == 1){
        $date = '2014-08-13'; 
        //$sql = "INSERT INTO newUsers (Email, CreationDate, UserRef, Type, id) VALUES ('$email','$date','$email','Host','$ssid')";
        $sql = "SELECT `email` FROM `newUsers` WHERE `hashpass` = '$pass' ";

        $result = mysqli_query($con,$sql);

        $row = mysqli_fetch_assoc($result);

        return $row;
        //I never receive this data in the angular app.
    } 
}
mysqli_close($con);
?>

有人可以指出正確的方法嗎?

我看到您有一個return語句,而不是echo語句。 PHP輸出中未顯示return語句。 只有在包含文件時,函數外部的return語句才有意義

$returned = include('the_file_you_showed_here.php');
//you will hold the row here

return語句殺死返回到包含腳本(如果有) 的當前腳本 ,但不將任何值發送到輸出(這是die / exit的目的)。 你應該:

  1. return更改為echo
  2. 如果您打算發送json數據,請記住在任何實際的echo指令或非PHP內容之前發送header('Content-type: application/json')
  3. 記住要對數據進行編碼: return json_encode($row)

在您的PHP中,確保您回顯您的結果,回顯的結果被傳遞到您的變量中

例如,如果您要從范圍中傳遞雜語,

function($scope,$http){

$scope.obj= "your variable";

$reuslt = http.get('yourlocation/yourfile.php?val='+obj');

你的PHP腳本

<?
$value = $_GET['val']


//not your variables have been passed in and you can use it to do your custom function wich ever way you like
and echo your result after wards
?>

希望這可以幫助

您不能像這樣調用相對路徑。 該文件必須存在於公共目錄或更低的目錄中。 例如,如果所有文件都在/ home /您的名稱/ public中,則需要調用/php-bin/example.php ,而php-bin位於公共目錄(/ home /您的名稱/ public / php-bin)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM