0

列名が郵便番号であるデータベースに顧客のリストがあります

現時点で私の検索はSQLを実行しています

SELECT *
FROM customer
WHERE postcode LIKE '%".$_POST["search term"]."%'

これは正常に機能しますが、データベースの行に (SS1 1AB) の郵便番号があり、誰かが (SS11AB) と入力した場合、どうすれば正しい行を見つけることができますか?

基本的には、すべての組み合わせなどを検索できるようにしたい

4

3 に答える 3

0

Mysql では、1 つの方法である正規表現の一致が許可されます。私がすることは、データベース内の単一の正しい表現で標準化し、それに対して入力を検証することです。これにより、SQL インジェクションの問題が回避され、マッチングが容易になります。また、データがデータベースに入力されるときにタイプミスを除外することもできます。

于 2013-09-02T20:01:28.133 に答える