sql >> データベース >  >> RDS >> Mysql

PHPPDOMySQLクエリLIKE->複数のキーワード

    エラーを消音するために@を使用しないでください。これは悪い習慣です。値が設定されているかどうかを確認してください。以下の例は機能するはずですが、結果はそれほど関連性がない可能性があります。

    $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. IN演算子に動的に値を渡す方法は?

    2. OracleからPostgreSQLへ—カーソルと一般的なテーブル式

    3. SQL Server(T-SQL)で電子メールの送信に失敗した理由を調べる

    4. MySQLの日、月、年のフィールドから日付を作成します