php - Angular 将数据插入 MySQL

标签 php mysql angularjs

我在使用 Angular 向 MySql DB 插入数据时遇到问题。

这是我的 HTML 文件

<!DOCTYPE html>
<html ng-app>
<head>
<title>AngularJs Post Example: DevZone.co.in </title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>
    <style>
        #dv1{
            border:1px solid #DBDCE9; margin-left:auto;
            margin-right:auto;width:220px;
            border-radius:7px;padding: 25px;
        }

        .info{
            border: 1px solid;margin: 10px 0px;
            padding:10px;color: #00529B;
            background-color: #BDE5F8;list-style: none;
        }
        .err{
            border: 1px solid;  margin: 10px 0px;
            padding:10px;  color: #D8000C;
            background-color: #FFBABA;   list-style: none;
        }
    </style>
</head>
<body>
    <div id='dv1'>
        <form ng-controller="FrmController">
            <ul>
                <li class="err" ng-repeat="error in errors"> {{ error}} </li>
            </ul>
            <ul>
                <li class="info" ng-repeat="msg in msgs"> {{ msg}} </li>
            </ul>
            <h2>Sigup Form</h2>
            <div>
                <label>Name</label> 
                <input type="text" ng-model="username" placeholder="User Name" style='margin-left: 22px;'> 
            </div>
            <div>
                <label>Email</label>
                <input type="text" ng-model="useremail" placeholder="Email" style='margin-left: 22px;'> 
            </div>
            <div>
                <label>Password</label>
                <input type="password" ng-model="userpassword" placeholder="Password">
            </div>
            <button ng-click='SignUp();' style='margin-left: 63px;margin-top:10px'>SignUp</button>
        </form>
    </div>

    <script type="text/javascript">
        function FrmController($scope, $http) {
            $scope.errors = [];
            $scope.msgs = [];

            $scope.SignUp = function() {

                $scope.errors.splice(0, $scope.errors.length); // remove all error messages
                $scope.msgs.splice(0, $scope.msgs.length);


                $http.post('http://bloom.net.pl/insertangular/insert.php', {'uname': $scope.username, 'pswd': $scope.userpassword, 'email': $scope.useremail}
                ).success(function(data, status, headers, config) {
                    if (data.msg != '')
                    {
                        $scope.msgs.push(data.msg);
                    }
                    else
                    {
                        $scope.errors.push(data.error);
                    }
                }).error(function(data, status) { // called        asynchronously if an error occurs
// or server returns response with an error status.
                    $scope.errors.push(status);
                });
            }
        }
    </script>

</body>

这是我的插入脚本

<?php
$data = json_decode(file_get_contents("php://input"));
$usrname = mysql_real_escape_string($data->uname);
$upswd = mysql_real_escape_string($data->pswd);
$uemail = mysql_real_escape_string($data->email);

$con = mysql_connect("localhost","testvip1_kol","MoLg67mf");
mysql_select_db("testvip1_kol");
mysql_query("SET NAMES 'utf8'");



$qry_em = 'select * from users where email ="' . $uemail . '"';
$qry_res = mysql_query($qry_em);
$res = mysql_fetch_assoc($qry_res);

if ($res['cnt'] == 0) {
$qry = 'INSERT INTO users (name,pass,email) values ("' . $usrname . '","' . $upswd . '","' . $uemail . '")';
$qry_res = mysql_query($qry);
if ($qry_res) {
    $arr = array('msg' =>  "User Created 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);
}
} else {
$arr = array('msg' => "", 'error' => 'User Already exists with same     email');
$jsn = json_encode($arr);
print_r($jsn);
}

?>

问题是我可以将空行插入到数据库中。您知道如何纠正它吗?

最佳答案

字段有值问题是两个文件之间的连接之间的问题。

使用 警报($范围.用户名,);

我可以显示该字段值。 php 文件中的变量没有值。

关于php - Angular 将数据插入 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38149129/

相关文章:

angularjs - 如何防止 Firebase 中出现重复的用户属性?

AngularJS:将对象的属性绑定(bind)到 ngModel

PHP 和 MySQL 更新 10 列

MySql 查询按时间分组

Glassfish 3.0.1 下的 Java Web 服务不将中文字符插入 MySQL 数据库

php - 简单的登录脚本

javascript - Angular : How do I execute an array of defered in order?

php - select查询中的where条件

javascript - 使用 php 抓取主要内容

php - PHP 中的多个 DI 容器?