如何使用JSON数据来自Angular2中的PHP文件?

时间:2016-10-14 09:35:06

标签: php json angular

export class LoginComponent 
{
     getdata : string;         
      public data;         
      username : any ;          
       password : any ; 

    constructor(private http: Http){}   

    login() {        
     var headers= new Headers({'Content-Type' : 'application/x-www-form-urlencoded '});        
    var body = JSON.stringify({    
       user : this.username,
       pwd : this.password,    
 })        
  this.http.post('.../pos_system/Widgets/Login.php',body, {
  headers:headers; })
   .map(res => res.json())
   .map(res => {
         if(res.success)
         {
            this.msg="Login Complete";
         }
         else{
             this.msg1="username and password is wrong";
         }
    })
      .subscribe(
        data =>this.getdata = JSON.stringify(data),
        err => console.error(err),
        () => console.log('done'));
    }
}

这是我的Angular2部分,我在res中从php文件中获取JSON数据。现在我想在我的angualr2部分使用此响应。我想使用json数据中用户的显示用户名。那么如何在angular2中做到这一点?

1 个答案:

答案 0 :(得分:2)

这很简单,只需进行此更改, 例如 this.msg=res.username; 这将在消息中显示用户名。 注意:你需要在php文件中执行此操作。

$data=array();

    $df=json_decode(file_get_contents("php://input"));
    $nam=$df->user;
    $pws=$df->pwd;

    $select=mysql_query("SELECT * FROM userData WHERE username='$nam' AND password='$pws'")or mysql_error();

    $sql=mysql_num_rows($select);
    if($sql>0)
    {
        while($row=mysql_fetch_array($select))
        {
            $data['success']=true;
            $user=$row['username'];
            $data['username']=$user;

        }
    }
    echo json_encode($data);