所以我在phpmyadmin的表上有两列,一列通过phpmyadmin(虚拟)插入,另一列通过android应用程序插入。我尝试使用Advanced Rest Client更新两列上的记录,并且更改仅应用于虚拟对象,而另一列无法更改。有人知道这背后的原因吗?
update_user.php
<?php
require_once 'db_function.php';
$db = new DB_Function();
if(isset($_POST['Phone']))
{
$phone = $_POST['Phone'];
$name = $_POST['Name'];
$address = $_POST['Address'];
$result = $db->updateUser($phone,$name,$address);
if($result)
echo json_encode("Update User success");
else
echo json_encode("Error while write to database");
}
else{
echo(json_encode("Required parameters (phone, name) is missing!"));
}
db_function.php
...
//Update User
public function updateUser($phone,$name,$address)
{
$stmt = $this->conn->prepare("UPDATE `user` SET `Name`=?, `Address`=? WHERE `Phone`=?");
$stmt->bind_param("sss",$name,$address,$phone);
$result = $stmt->execute();
return $result;
}
...
更改仅适用于电话上带有“ 0811”的列
编辑
按照尼克的建议使用var_dump之后, 假定为“ +6281293168889”的“电话”列将变为“ 6281293168889”。 任何想法如何解决这个问题?这是数据库结构
编辑
通过将主体类型更改为multipart / form-data而不是application / x-www-form-urlencoded
解决了