当我运行此代码时,它返回 True ,但同时它会提供数组到字符串转换错误。我已经看到了其他答案,但我在这段代码中找不到问题。它在查询行上出错。
<?php
$id = ['id'];
$name = $_POST["name"];
$email = $_POST["Email"];
$mobile = $_POST["MobileNo"];
$password = $_POST["Password"];
$result = mysqli_query($conn, "UPDATE sign_up SET full_name = '$name', email = '$email', phone_official = '$mobile', password ='$password'where idsign_up='$id'");
$res = array();
// /$res['id'] = 0;
if ($result) {
$res['check'] = true;
$res['message'] = 'Data Updated..';
// /$res['id'] = mysqli_insert_id($conn);
}
else {
$res['check'] = false;
$res['message'] = 'There was an Errorr!';
// /$res['message'] = $emailErr;
}
header('Content-Type: application/json');
echo json_encode($res);
答案 0 :(得分:0)
首先,我建议调查PDO,因为您的脚本现在很容易被注入。 Information on PDO from PHP.net
要解决您的错误,我认为更改第一行代码会很容易。它现在说:
$id=['id'];
你可能想要一个$ _GET或$ _POST,但是在这种形式下它肯定不会起作用。如果ID在URL中,我猜它会变成:
$id=$_GET['id'];
如果仍然无法解决问题,请与行号共享错误代码。
但同样,请查看PDO,因为此脚本非常容易受到攻击。