不動産検索フォームを作成していますが、寝室の数については、ユーザーが数字を入力するまで最小値と最大値を表示するフィールドがあります。このコードを使用してこれを行います。
<input type="text" name="room_no_min" id="room_no_min" value="Min" onblur="if(this.value=='')this.value='Min'" onFocus="if (this.value == 'Min') {this.value=''};" class="min_input">
<input type="text" name="room_no_max" id="room_no_max" value="Max" onblur="if(this.value=='')this.value='Max'" onFocus="if (this.value == 'Max') {this.value=''};" class="min_input">
ただし、何も入力せずに結果が表示されると、最小ボックスは空で表示されますが、最大ボックスには引き続き最大が正しく表示されます。結果を表示するには、次のコードを使用します。
//check bedrooms
if(!empty($_GET["room_no_min"]) && is_numeric($_GET["room_no_min"])){
$query[] = "'No_Bedrooms' >= '".$_GET["room_no_min"]."'";
$room_min_val = $_GET["room_no_min"];
}
if(!empty($_GET["room_no_max"])){
$query[] = "'No_Bedrooms' <= '".$_GET["room_no_max"]."'";
$room_max_val = $_GET["room_no_max"];
}
に続く
<input type="text" name="room_no_min" id="room_no_min" value="<?php echo $room_min_val?>" value="Min" onblur="if(this.value=='')this.value='Min'" onFocus="if (this.value == 'Min') {this.value=''};" class="min_input">
<input type="text" name="room_no_max" id="room_no_max" value="<?php echo $room_max_val?>" value="Max" onblur="if(this.value=='')this.value='Max'" onFocus="if (this.value == 'Max') {this.value=''};" class="min_input">
問題が発生する可能性が高い場所は、最小値のスクリーニングの is_Numeric 部分であることは知っていますが、それを機能させる方法を理解できないようです。
解決策はありますか?