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

PHP PDO MySQL dotaz LIKE -> více klíčových slov

K umlčení chyb byste neměli používat @, je to špatný postup, zkontrolujte, zda je nastavena hodnota. Níže uvedený příklad by měl fungovat, ale výsledky nemusí být tak relevantní.

$search = isset($_GET['q']) ? $_GET['q'] : ''; 
$search = strtoupper($search);
$search = strip_tags($search); 
$search = trim($search);
$words = explode(' ', $search);
$words_condition = array();
$arguments = array();
foreach ($words as $word) {
    $words_condition[] = 'name LIKE ?';
    $arguments[] = '%'.$word.'%';
}

$query = $con->prepare('SELECT * FROM `users` WHERE '.implode(' OR ', $words_condition));
$query->execute($arguments);

$result = $query->rowCount();
echo $result;


  1. SQL dotaz pro porovnání prodeje produktů podle měsíce

  2. Jak hledat lomítko (\) v MySQL? a proč se escapování (\) nevyžaduje pro kde (=), ale pro Like?

  3. Jaká je správná konvence pojmenování pro MySQL FK?

  4. Poddotaz SQLite