如何在angular4

时间:2017-10-23 04:32:37

标签: php mysql angular

在PHP中,HTML我只是用来获取数组中的数据并在选择框中显示它,如下所示 -

<?php

mysql_connect('hostname', 'username', 'password');
mysql_select_db('database-name');

$sql = "SELECT nameid FROM PC";
$result = mysql_query($sql);

echo "<select name='PcID'>";
while ($row = mysql_fetch_array($result)) {
    echo "<option value='" . $row['nameid'] . "'>" . $row['nameid'] . "</option>";
}
echo "</select>";

?>

我的意思是我可以连接到MySQL数据库,发出查询,并从表格中的每一行输出一个框的标签

  

但是我如何在angular4中实现相同的目标?

最好的方法是在jsn中获取数据,然后通过创建API在前端显示它?或者还有其他方法吗?

请告知快速选项。

1 个答案:

答案 0 :(得分:1)

最好的方法是将数据作为json返回 使用rxjs订阅,您可以像这样获取数据

 users:any[]= [];
fetchData(){
  this.http.get("users/all-users")
      .subscribe((res)=>{
        this.users = res.data
       })

  }

所以在html中它会像

<select>
    <option *ngFor="let user of users" value="user.id">
  {{ user.name }}
</option>

 </select>

所以在你的php中返回这样的数据

function getUsers(){

  mysql_connect('hostname', 'username', 'password');
   mysql_select_db('database-name');

   $sql = "SELECT nameid FROM PC";
   $result = mysql_query($sql);

  return ["data"=>$result];
 }

建议虽然不使用普通的php,但使用像laravel / yii2这样的框架,这样可以轻松返回数据

NB:

Angular4是一个前端框架,所以你不能像在php框架中那样使用echo。

希望这有帮助。