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

phpとmysqlで複数のキーワードを検索します(Xが好きな場合)

    すべてのキーワードを動的に検索するには、展開機能を使用してすべてのキーワードを分離できます。

    $queried = mysql_real_escape_string($_POST['query']); // always escape
    
    $keys = explode(" ",$queried);
    
    $sql = "SELECT * FROM links WHERE name LIKE '%$queried%' ";
    
    foreach($keys as $k){
        $sql .= " OR name LIKE '%$k%' ";
    }
    
    $result = mysql_query($sql);
    

    注1: クエリで使用する前に、必ずユーザー入力をエスケープしてください。

    注2: mysql_*関数は非推奨です。代わりにMysqliまたはPDOを使用してください

    更新2018-注3: $queriedの長さを確認することを忘れないでください 変数と制限を設定します。そうしないと、ユーザーはさまざまな大きな文字列を入力してデータベースをクラッシュさせる可能性があります。



    1. SQLServer浮動小数点データ型の計算と10進数

    2. #1115-不明な文字セット:'utf8mb4'

    3. docker-composestartupでデータベースを作成します

    4. RailsアプリでのHerokuPostgreSQLGROUP_BYエラー