如何用AngularJS抓取数据库列

How to grab a database column with AngularJS?

本文关键字:数据库 抓取 AngularJS 何用      更新时间:2023-09-26

我想从我的数据库中抓取一些数据,但我所能抓取的是用户id名和电子邮件。我试图抓取城市和地址,但没有显示任何东西,在控制台我收到未定义。有人知道我哪里说错了吗?

app.js

.run(function ($rootScope, $location, Data) {
        $rootScope.$on("$routeChangeStart", function (event, next, current) {
            $rootScope.authenticated = false;
            Data.get('session').then(function (results) {
                if (results.uid) {
                    $rootScope.authenticated = true;
                    $rootScope.uid = results.uid;
                    $rootScope.name = results.name;
                    $rootScope.email = results.email;
                    $rootScope.phone = results.phone;
                    console.log(results.phone);
                } else {
                    var nextUrl = next.$$route.originalPath;
                    if (nextUrl == '/signup' || nextUrl == '/login') {
                    } else {
                        $location.path("/login");
                    }
                }
            });
        });
    });

dashboard.html

UID: {{uid}}
<br/>NAME: {{name}}
<br/>E-MAIL: {{email}}
<br/>PHONE: {{phone}}
<br/>
sql

CREATE TABLE IF NOT EXISTS `customers_auth` (
  `uid` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `email` varchar(50) NOT NULL,
  `phone` varchar(100) NOT NULL,
  `password` varchar(200) NOT NULL,
  `address` varchar(50) NOT NULL,
  `city` varchar(50) NOT NULL,
  `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`uid`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

dbHandler.php

public function getSession(){
    if (!isset($_SESSION)) {
        session_start();
    }
    $sess = array();
    if(isset($_SESSION['uid']))
    {
        $sess["uid"] = $_SESSION['uid'];
        $sess["name"] = $_SESSION['name'];
        $sess["email"] = $_SESSION['email'];
        $sess["phone"] = $_SESSION['phone'];
    }
    else
    {
        $sess["uid"] = '';
        $sess["name"] = 'Guest';
        $sess["email"] = '';
        $sess["phone"] = '';
    }
    return $sess;
}

authentication.php

$app->get('/session', function() {
    $db = new DbHandler();
    $session = $db->getSession();
    $response["uid"] = $session['uid'];
    $response["email"] = $session['email'];
    $response["name"] = $session['name'];
    echoResponse(200, $session);
});

您肯定需要从customers_auth表edit authentication.php

获取用户信息
$app->get('/session', function() {
    $db = new DbHandler();
    $session = $db->getSession();
    // depends on your db connector you should select the user required 
    //using the id: "$session['uid']".
    $user = $db->getOneRecord("select * from customers_auth where uid =".$session['uid']);
    $response["address"] = $user['address'];
    $response["city"] = $user['city'];
    $response["uid"] = $session['uid'];
    $response["email"] = $session['email'];
    $response["name"] = $session['name'];
    echoResponse(200, $response);
    });