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

La fonction de recherche PHP mySQL rejoint divers champs

Il suffit de les diviser en un OR déclaration :

$sims = mysql_query("SELECT * 
                     FROM `electors` 
                     WHERE `constituency` = '$constituency' 
                     AND `ward` = '$ward' 
                     AND (`title` RLIKE '$q' 
                         OR `first_name` RLIKE '$q' 
                         OR `initial` RLIKE '$q' 
                         OR `surname` RLIKE '$q' 
                         OR `suffix` RLIKE '$q' 
                         OR `roll_no` RLIKE '$q' 
                         OR `email` RLIKE '$q' 
                         OR `telephone` RLIKE '$q') 
                     LIMIT 18");

Ce n'est pas la requête la plus efficace, mais elle fera le travail.

Assurez-vous également de nettoyer $q avant de faire cette requête. L'injection SQL est un problème majeur.