这是我的代码。我想用angular和php检查验证 这是HTML。我想检查验证此表格
<form ng-submit="dk()">
<label for="">Name</label>
<input type="text" name="name" ng-model="formData.name">
{{errorName}}
<button type="submit">Submit</button>
</form>
{{formData}}
{{message}}
这里是棱角分明的。我发送http请求到PHP代码
function dkController($scope,$http){
$scope.formData ={};
$scope.dk = function(){
$http({
method:'POST',
url:'test.php',
data:$.param($scope.formData),
}).then(onSuccess)
function onSuccess(response){
$scope.mydata = response.data;
if($scope.mydata.success==false){
$scope.errorName = response.data.errors.name;
}else{
$scope.message = response.data.message;
$scope.errorName='';
}
}
这是php。我在这里做检查代码
<?php
$data=array();
$errors=array();
$conn = mysqli_connect('localhost','root','','project');
if(isset($_POST['name'])){
$username =$_POST['name'];
$sql="SELECT * FROM hoso where username='$username'";
$result = mysqli_query($conn,$sql);
if(mysqli_num_rows($result)>0){
$errors['username']='You cant use this username';
}
}
if(!empty($errors)){
$data['success']=false;
$data['errors']=$errors;
}else{
$data['success']=true;
$data['message']='Success';
}
echo json_encode($data);
?>
这里是显示{"success":true,"message":"Success"}
我不知道为什么在这个json中没有错误。我哪里错了。请帮我 。谢谢
答案 0 :(得分:0)
首先在你的角度方法onSuccess
中只放下以下内容,更新如下
function onSuccess(response){
$scope.mydata = response.data;
}
要查看您的内容,请将{{message}}
替换为
{{mydata}}
通过这个你可以看到发生了什么
上面只是为了检查你从PHP脚本中获得了什么。以上代码不是解决方案
并且你的角度方法onSuccess也有错误,纠正你的角度值而不是response.data.errors.name;
使用response.data.errors.username;
在完成我提到的所有更正后,请打印{{errorName }}
并查看相关信息。
OR 只需使用以下
的更新强>
HTML
<form ng-submit="dk()">
<label for="">Name</label>
<input type="text" name="name" ng-model="formData.name">
{{errorName}}
<button type="submit">Submit</button>
</form>
{{formData}}
{{errorName}}
JS
function onSuccess(response){
$scope.mydata = response.data;
if($scope.mydata.success==false){
$scope.errorName = response.data.errors.username;
}else{
$scope.message = response.data.message;
$scope.errorName='Success msg';
}
}