Angular 4 - 如何使用参数将数据获取到数据库

时间:2017-09-06 05:33:48

标签: php angular

我想知道如何使用http服务将参数从url传递给php。

服务

  getEmployeesById(data) {
     let datas = JSON.stringify({'id':data});
      return this.http.get('http://localhost/employees/?p=editEmployees', datas)
    .map(response => response.json() );
  }

组件:

ngOnInit() {
this.activatedRoute.queryParams.subscribe((queryParams: Params) => {
  let userId = queryParams['id'];
  this.employeesServices.getEmployeesById(userId)
    .subscribe(data => {
      this.result = data
    });
});

}

PHP:http://localhost/employees/?p=editEmployees

$editEmployees = mysqli_query($con, "SELECT * FROM $employeesTable WHERE emp_id = '".$_GET['id']."' ");
$rows = mysqli_fetch_assoc($editEmployees);
$emp[] = $rows;
echo json_encode($emp);

- 我创建了一个获取员工ID的mysqli查询。 - 然后在组件中,我从url param(id)中获取了emp id,就像这样

this.employeesServices.getEmployeesById(userId);

我的问题是,我不知道我是否正确传递数据。

我使用

在html中显示数据
{{ result.first_name }}

但我无法做到。

1 个答案:

答案 0 :(得分:1)

您可以在查询字符串中发送它,就像您已经在查询字符串中发送p=editEmployees一样。您可以在查询字符串中添加另一个参数,如此

getEmployeesById(data) { // as data is userId so simply append it 
      return this.http.get('http://localhost/employees/?p=editEmployees&id='+ data)
    .map(response => response.json() );
  }