简体   繁体   English

使用AngularJS和PHP将数据保存到数据库

[英]Saving data to DB with AngularJS and PHP

So i am new at Angular and never have made a connection to a DB with PHP via Angular. 所以我是Angular的新手,从来没有通过Angular与PHP建立数据库连接。 My angular setup is good. 我的角度设置很好。 The data is coming through but i cannot seem to save it to my DB 数据正在通过,但我似乎无法将其保存到我的数据库中

This is my code for the html: 这是我的html代码:

<form ng-controller="AppCtrl" name="add_user">
            <div class="modal-header">
                <h3 class="modal-title">Add a user by sending an invite via e-mail</h3>
            </div>
            <div class="modal-body">
                <input type="text" class="form-control" name="user_email" ng-model="user_name" placeholder="Enter a name">
                    <br />
                <input type="text" class="form-control" name="user_name" ng-model="user_email" placeholder="Enter an e-mail adress">
            </div>
            <div class="modal-footer">
                <!-- <button type="" class="btn btn-success" ng-click="add_user()">Invite</button> -->
                <input type="button" class="btn btn-success" name="add_user" value="Invite" ng-click="save_user()">
                <button class="btn btn-warning">Cancel</button>
            </div>
    </form>

This is my app.js code: 这是我的app.js代码:

var app = angular.module('AddUser', []);

app.controller('AppCtrl', function($scope, $http){

$scope.save_user = function() {

    $http.post('db.php?action=add_user', 
        {
            'user_name'  : $scope.user_name, 
            'user_email' : $scope.user_email
        }
    )

    .success(function (data, status, headers, config) {
        console.log("The user has been added successfully to the DB");
        console.log(data);
    })

    .error(function(data, status, headers, config) {
        console.log("Failed to add the user to DB ");
    });
}

});

And this is my php code: 这是我的php代码:

<?php 
include('config.php');

//echo ('test' . $_GET['action']);
switch($_GET['action'])  {
    case 'add_user' :
        add_user(); 
        break;
}

/**  Function to add user to db **/
function add_user() {

    $data = json_decode(file_get_contents("php://input")); 
    $user_name      = $data->user_name;    
    $user_email     = $data->user_email;

   print_r($data);

    $qry = 'INSERT INTO tblUser(user_name, user_email) VALUES ("' . $user_name  . '","' . $user_email . ')';

    echo ($qry);

    $qry_res = mysql_query($qry);
    if ($qry_res) {
        $arr = array('msg' => "User added successfully!!!", 'error' => '');
        $jsn = json_encode($arr);
        // print_r($jsn);
    } 
    else {
        $arr = array('msg' => "", 'error' => 'Error in inserting record');
        $jsn = json_encode($arr);
        // print_r($jsn);
    }
}

?> ?>

If any one can point me in the right direction i would really appreciate it 如果有人能指出正确的方向,我将不胜感激

You're missing a closing double quotes on your email on the insert SQL. 您在插入SQL的电子邮件中缺少右引号。

Should be; 应该;

$qry = 'INSERT INTO tblUser(user_name, user_email) VALUES ("' . $user_name . '","' . $user_email . '")';

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM