2011-07-25 1 views
0

$_GET['value']でデータを取得しています。その値を配列の変数として表現します。

私は3つのオプションのドロップダウンメニューでソートを構築しています。

私は一致する配列を検索したいと思います。

$_GET['value'] == 'name' の場合、'name'の配列を検索し、その値をクエリに送信するデータとして使用したいとします。

並べ替え:PHPは選択メニューの値を取得するときに

<select name='1' value='name'>Name</select> 
<select name='1' value='manufacturer'>Brand</select> 

は、だから私は、その名前の配列検索を行うと、私のクエリに送信する変数を表すために、その値を使用します。

+0

あなたのhtmlを示し、それはタイプミスだ – Ibu

答えて

1

$_GETで受信した値は、あなたの配列である場合、そのインデックスによってそれを取得し決定します。

// Your values are stored in this array 
$your_array = array("name" => "some name", "place" => "some place"); 

// Check if the `value` is a key in your array 
if (array_key_exists($_GET['value'], $your_array)) { 
    $search_value = $your_array[$_GET['value']]; 
} 
else { 
    // Not found.. Use some default value instead. 
} 
+0

@RPMより多くの意味を行います!これは '$ your_array [$ _ GET ['value']]'でなければなりません。そうすれば、GET –

+0

に渡されたキーが見つかるでしょう。これは、データベースへのライブクエリがあらかじめ定義されていないため、非常に便利な機能です –

0

値はin_array()方法

例を使用して配列しているかどうかをチェックすることができます:

$yourArray = array(...); 

if ($_GET['value'] == 'name') { 
    if (in_array($theName,$yourArray)) { 
     // build your query 
    } 
} 
0
if (isset($_GET['value'])) { 
    if ($value = $your_array[$_GET['value']]) { 
     //do something by this $value 
    } 
} 
else { 
    echo 'nothing'; 
} 
関連する問題