drupal 7 で検索クエリが郵便番号かどうかを確認しようとしています
$input = filter_var(urldecode(((isset($vars["view"]->exposed_input))? $vars["view"]->exposed_input["distance"]["postal_code"] : $vars["view"]->exposed_raw_input["distance"]["postal_code"])), FILTER_SANITIZE_STRING);
if($result = db_query("SELECT zip, city, state, country FROM zipcodes WHERE zip = :zip", array(":zip" => $input))) {
if($result->rowCount() > 0) {
//get city state and country
} else {
//input is not a zip code
}
}
問題は、入力を非郵便番号に設定すると、入力が何であれ、都市の州と国が何も設定されていない郵便番号フィールドを含む1行が返されることです。
都市の状態と国が何もないかどうかを確認することはできますが、正しく機能させたいと思います
データベースに行がないのになぜ1行を返すのか誰か知っていますか?