我有一个视图,其中客户端的数据显示在表格中,客户端帐户显示,ng-repeat显示的是数组,并且对于属于每个客户端的每一行,我都有一个'添加'按钮,此按钮必须将每个客户端添加到另一个表'客户端',当我尝试此代码时,它会生成此错误:undefined property "code"
,错误在哪里!
register.html
<div class="padding" ng-controller="RegisterCtrl" ng-init="loadClient1()">
<a class="button button-info" href="#/ajoutClient" style="background-color:#6EB4DC;float:right">Ajouter un client</a>
<table>
<tr>
<th>Code.Client</th>
<th>Nom</th>
<th>Prenom</th>
<td>Ajouter</td>
</tr>
<tr ng-repeat="x in names">
<td ng-model="code">{{x.CodeClient}} </a> </td>
<td ng-model="nom">{{x.NomClient}} </td>
<td ng-model="prenom">{{x.PrenomClient}}</td> >
<td><a class="button button-info" ng-click="insertClient()" >Ajouter</a> </td>
</tr>
</table>
app.js
$scope.insertClient = function(){
if(confirm("Êtes-vous sûr?"))
{
$http.post(
"http://localhost/deb/insertClient.php",
{
'code' :$scope.code,
'nom' :$scope.nom,
'prenom' :$scope.prenom,
}
).success(function(data){
});
}
else
{
return false;
}
}
insertClient.php
<?php
$connect = mysqli_connect("localhost", "root", "", "test");
$data = json_decode(file_get_contents("php://input"));
if(count($data) > 0)
{ $CodeClient=mysqli_real_escape_string($connect,$data->code);
$NomClient = mysqli_real_escape_string($connect, $data->nom);
$PrenomClient = mysqli_real_escape_string($connect, $data->prenom);
$query = "INSERT INTO client (NomClient,PrenomClient) VALUES
('$NomClient','$PrenomClient') WHERE CodeClient='$CodeClient'";
if(mysqli_query($connect, $query))
{
echo "The client has been successfully added";
}
else
{
echo 'Error';
}
}
?>
答案 0 :(得分:3)
没有INSERT INTO ... WHERE
语法。你想要做的是UPDATE ..SET ..WHERE
:
$query = "UPDATE client
SET NomClient ='$NomClient' ,PrenomClient = '$PrenomClient'
WHERE CodeClient='$CodeClient'";
正如我在评论中所说:
使用预备语句而不是mysqli_real_escape_string
来阻止SQL注入。
答案 1 :(得分:2)
我提交以下内容,因为您没有回复我在您的问题下留下的评论。如果您在发布期间离开了问题,可以阅读以下内容:
看到标题“如何插入表格”,您似乎想要插入新记录。
您的“客户端ajoutéavecsuccès”这是的法语“客户端已成功添加”,这也表明您希望插入新记录。
INSERT
没有WHERE
子句,您的代码部分需要删除。
但是,如果您希望继续使用INSERT,则会有INSERT ... ON DUPLICATE KEY UPDATE。
如果目标是更新现有记录,则需要使用“UPDATE”:
使用mysqli_error($connect)
检查查询错误: