sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo verificar la cadena presente en la columna de la base de datos?

Su concatenación de cadenas está desordenada, debería ser:(más simplificada )

$selDoc="SELECT * FROM documents WHERE 'U".$_SESSION['userId']."' IN (senderID,receiver_id) ORDER BY id DESC";

cuando se analiza la declaración anterior, se verá así:

SELECT * 
FROM   documents 
WHERE  'UXX' IN (senderID,receiver_id)  // where XX is the userID
ORDER  BY id DESC

Como nota al margen, la consulta es vulnerable con SQL Injection si el valor (s ) de las variables vino del exterior. Por favor, eche un vistazo al siguiente artículo para saber cómo prevenirlo. Mediante el uso de PreparedStatements puede deshacerse del uso de comillas simples alrededor de los valores.