Я переписываю заявления MySQL на подготовленные из-за SQL-инъекций, но я не могу заставить это работать. Он возвращает:
Ошибка: 1 У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии сервера MariaDB, для правильного синтаксиса для использования рядом с "1" в строке 1
$cihc = mysqli_prepare($conn,"UPDATE user SET picture=? WHERE id1=?");
mysqli_stmt_bind_param($cihc, "si", $image, $userid);
$sql = mysqli_stmt_execute($cihc);
mysqli_stmt_close($cihc);
if ($conn->query($sql) === TRUE) {
echo "Sent successfully";
}
else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
Вы пытаетесь выполнить запрос по результату update
. Удалите вызов query()
и измените присвоение $sql
, так как это не SQL.
$cihc = mysqli_prepare($conn,"UPDATE user SET picture=? WHERE id1=?");
mysqli_stmt_bind_param($cihc, "si", $image, $userid);
$result = mysqli_stmt_execute($cihc);
mysqli_stmt_close($cihc);
if ($result) {
echo "Sent successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}