1

私が取り組んでいるタブレット サイトで、PHP を使用して変数を取得する際に問題があります。ホームページに変数をリスト ページに渡す検索フォームがあります。次に、PHP を使用して、渡された内容に応じて適切な値を事前に選択する「検索の絞り込み」ダイアログ ボックスに同じ検索フォームを表示します。

問題は、渡された変数を (PHP を使用して) 取得できないように見えることです。たとえば、検索に次のフィールドがあります。

<select name="propertyType" id="propertyType">
        <option value="">Any Type</option>
        <option value="1"<?php if(isset($_GET['propertyType']) && $_GET['propertyType']=="1") { echo ' selected'; } ?>>Houses</option>
        <option value="2"<?php if(isset($_GET['propertyType']) && $_GET['propertyType']=="2") { echo ' selected'; } ?>>Flats/Apartments</option>
        <option value="3"<?php if(isset($_GET['propertyType']) && $_GET['propertyType']=="3") { echo ' selected'; } ?>>Bungalows</option>
        <option value="4"<?php if(isset($_GET['propertyType']) && $_GET['propertyType']=="4") { echo ' selected'; } ?>>Other</option>
    </select>

しかし、これらの値のいずれかを渡すと、コードはそれらを取得せず、関連する「選択済み」をエコーし​​ます。

タブレット サイトは次の場所にあります: http://muskermcintyre.co.uk/tabletどんな助けでも大歓迎です!

ありがとう。

4

2 に答える 2

1

次の構文をお勧めします。

<?php
    $values  = array(
        0 => 'Any Type',
        1 => 'Houses',
        2 => 'Flats/Apartments',
        3 => 'Bungalows',
        4 => 'Other'
    );
    $current = (int) $_GET['propertyType'];
?>

<select name="propertyType" id="propertyType">
<?php
    foreach ( $values as $key => $value ) {
        $selected = $key == $current ? 'selected="selected"' : '';
        echo "<option value='$key' $selected >$value</option>";
    }
?>
</select>
于 2012-07-24T10:57:53.157 に答える