Mysql
 sql >> Base de données >  >> RDS >> Mysql

comment vérifier la chaîne présente dans la colonne de la base de données ?

Votre concaténation de chaînes est foirée, elle devrait être :(plus simplifiée )

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

lorsque la déclaration ci-dessus est analysée, elle ressemblera alors à ceci :

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

En passant, la requête est vulnérable avec SQL Injection si la valeur(s ) des variables provenaient de l'extérieur. Veuillez consulter l'article ci-dessous pour savoir comment l'éviter. En utilisant PreparedStatements vous pouvez vous débarrasser de l'utilisation de guillemets simples autour des valeurs.