Nathanael De Leon Ответов: 1

Как мне...:у вас есть ошибка в синтаксисе SQL; проверьте руководство, которое соответствует вашей версии сервера mariadb, чтобы найти правильный синтаксис для использования рядом с '? '


Мой код


<pre><?php
if (isset($_POST['ingresarsim'])) {
	$ingresarSim = trim($_POST['ingresarsim']);



	}
 
$conexv = mysqli_connect("localhost","root","") or die("problemas al conectar");

mysqli_select_db($conexv,"ventas") or die("problemas base de datos");

$reg = mysqli_prepare($conexv, "SELECT COUNT(*) FROM ventas WHERE id = ?");
mysqli_stmt_bind_param($reg, "i", $ingresarSim);
mysqli_stmt_execute($reg);

$conteoFilas = mysqli_stmt_get_result($reg);

if (!$reg) {
    print_r(mysqli_error($conexv));
} else {
    if ($conteoFilas->field_count > 0) {
        $eliminado = mysqli_query($conexv, "DELETE FROM sim WHERE id = ?")or die ("Problemas en consulta:". mysqli_error($conexv));
;
        mysqli_stmt_bind_param($eliminado, "i", $ingresarSim);
        mysqli_stmt_execute($eliminado);
        echo "Datos Eliminados";
    } else {
        echo "Datos no han sido Eliminados";
    }
}
?>





Что я уже пробовал:

I have tried a lot of advice online but couldnt resolve this error.

Richard MacCutchan

Какое утверждение, и уверены ли вы, что $ingresarSim это целочисленное значение?

Nathanael De Leon

$ _POST ['ingresarsim'] - это все, что входит в текстовое поле под названием ingresarsim, а $ingresarSim-это его переменная в целочисленном виде, верно?

Richard MacCutchan

Откуда мне знать? Используйте свой отладчик, чтобы точно проверить, какой тип объекта публикуется. Если это не целое число, то ваш код должен преобразовать его. Либо на вашей веб-странице, либо перед ее использованием в операторах базы данных.

1 Ответов

Рейтинг:
2

Chris Copeland

Похоже, что вы пытаетесь использовать mysqli_stmt_bind_param о результате а mysqli_query что вы не можете сделать, вам нужно использовать mysqli_prepare как описано выше в этом посте Stackoverflow[^]

Вам нужно изменить начало строки $eliminado = mysqli_query