sql >> Databáze >  >> RDS >> Mysql

jak zkontrolovat řetězec přítomný ve sloupci databáze?

Zřetězení řetězců je špatně, mělo by být:(dále zjednodušeno )

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

když je výše uvedený příkaz analyzován, bude vypadat takto:

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

Jako vedlejší poznámka je dotaz zranitelný pomocí SQL Injection pokud je hodnota (s ) proměnných pochází zvenčí. Podívejte se prosím na níže uvedený článek, kde se dozvíte, jak tomu zabránit. Pomocí PreparedStatements můžete se zbavit používání jednoduchých uvozovek kolem hodnot.



  1. Jak vybrat z textu pole mysql a porovnat

  2. Neukončená nabídka dolaru

  3. Zkontrolujte, zda v poli Postgres existuje NULL

  4. php neukládá data do mysql