【问题标题】:select-option angular, php and mysql选择选项 Angular、php 和 mysql
【发布时间】:2015-11-19 19:00:49
【问题描述】:

我想在表单的选择选项(下拉菜单)中显示数据库中的数据

这是 HTML 代码

<select ng-init="get_position()" class="form-control">
        <option ng-repeat="position in positionItems" value="">{{position.position_name}}</option>
</select>

这是控制器(Angular)

$scope.get_position = function () {
    $http.get("/pooh/action.php?action=get_position").success(function (data) {
        $scope.positionItems = data;
        console.log("GET POSITION!!!");
    });
}

这是 PHP

/**  Function to Get Staff Position  **/

function get_position() {    
    $qry = mysql_query('SELECT * FROM `position`');
    $data = array();
    while ($rows = mysql_fetch_array($qry)) {
        $data[] = array(
            "position_name" => $rows['name']
        );
    }
    print_r(json_encode($data));
    return json_encode($data);  
}

我知道错误可能来自 html 代码。如何将控制器绑定到 Angular 语法中?

【问题讨论】:

  • 问题陈述在哪里。
  • 错误:[ngRepeat:dupes]
  • 您是否从您的 php 函数中获取数据?编辑:我的意思是从你的角度获取请求
  • 试试这个:ng-repeat="positionItems track by $index"
  • 我刚刚注意到我添加了 console.log($scope.positionItems);它在我的控制台中发生 ReferenceError

标签: javascript php mysql angularjs


【解决方案1】:

?action=get_position 不会调用你的 php 函数,除非你的脚本中有一些逻辑来获取 $_GET 变量,即使那样,你仍然需要调用你的函数。

删除它,然后在 php 脚本中调用你的函数。

function get_position() {    
    $qry = mysql_query('SELECT * FROM `position`');
    $data = array();
    while($rows = mysql_fetch_array($qry))
    {
        $data[] = array(
                    "position_name" => $rows['name']
                    );
    }
    print_r(json_encode($data));
    return json_encode($data);  
}

// call your function
get_position();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-22
    • 2014-11-18
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多