Estoy ejecutando este código php con sql query pero sigue mostrando este error y no pude encontrar dónde está el error. ¿Pueden ayudar por favor? GRACIAS POR ADELANTADO

Advertencia: mssql_query (): mensaje: sintaxis incorrecta cerca de '='. (gravedad 15)

Advertencia: mssql_query (): error general de SQL Server: compruebe los mensajes del servidor SQL (gravedad 15)

Advertencia: mssql_query (): error en la consulta

Tengo esto en mi user.php

if(isset($_POST['refresh'])){
    $mssql_real = db_connect_real();
    $sql = "UPDATE TOP(1) click_users_phones SET pin_failed = 0, status = 1, pin_blocked_time = NULL WHERE phone_num = $phone_num";
    mssql_query($sql, $mssql_real);
}

Tengo esto en otro archivo php

<form action="user.php" method="post">
    <button class="#" name="refresh">Refresh</button>
</form>
1
Bukhari 31 mar. 2017 a las 09:21

2 respuestas

La mejor respuesta

Actualizar esta declaración

$sql = "UPDATE TOP(1) click_users_phones SET pin_failed = 0, status = 1, pin_blocked_time = NULL WHERE phone_num = $phone_num";

Para

$sql = "UPDATE TOP(1) click_users_phones SET pin_failed = 0, status = 1, pin_blocked_time = NULL WHERE phone_num =".$phone_num;
2
Ramesh Kharbuja 31 mar. 2017 a las 06:34

Su declaración SQL debería ser como

UPDATE TOP(1) A SET pin_failed = 0, status = 1, pin_blocked_time = NULL 
FROM click_users_phones A WHERE phone_num = ''

Nota: Pero debe recordar que SQL nunca le garantiza el orden. Entonces, si está actualizando el TOP 1, debe proporcionar ORDER BY en la selección. Para que actualice el registro correcto.

0
Shakeer Mirza 31 mar. 2017 a las 06:29