我想通过php中的mysqli运行更新查询。这是我的代码:
$idget = $_GET['id'];
include_once ('config.php');
$sqlselected = "SELECT * FROM student WHERE id='$idget' ";
$resaul = mysqli_query($cont,$sqlselected);
$row = mysqli_fetch_assoc($resaul);
//var_dump($row);
if (isset($_POST['btn'])){
$data = $_POST['frm'];
// var_dump($data);
// echo $data['name'];
$sqlupdate = "UPDATE student SET name ='$data=[name]' WHERE id=$idget ";
mysqli_query($cont,$sqlupdate);
}
但是我在更新mysql时遇到此错误:
注意:更新musqli中数组到字符串的转换
我在做什么错?我该如何解决?
答案 0 :(得分:0)
我不知道$data = $_POST['frm'];
的值,但是我认为这是一个字符串而不是数组,在这种情况下,请使用:$sqlupdate = "UPDATE student SET name ='$data' WHERE id=$idget ";
如果$data = $_POST['frm'];
的值是一个数组,请尝试以下操作:$sqlupdate = "UPDATE student SET name ='".$data['name']."' WHERE id=$idget ";
答案 1 :(得分:0)
尝试更改$sqlupdate = "UPDATE student SET name ='$data=[name]' WHERE id=$idget ";
到$sqlupdate = "UPDATE student SET name ='".$data=["name"]."' WHERE id=$idget ";
我认为是因为$data=[name]
中的名称索引没有引号或撇号。
答案 2 :(得分:-1)
首先 https://stackoverflow.com/a/60496/10748309
您可以尝试
"UPDATE student SET name =$data=[`name`] WHERE id=$idget";