0

クエリ文字列のペアを使用して特定のページコンテンツを生成したい

クエリ文字列の例:example.co.uk/index.php?brand=apple&video=red

私はいくつかの単純なPHPを使用して、次のようにいくつかのヘルプを使用してdividをクエリブランドに置き換えることができました。

<?php 
$recognised_brands = array( 
  "apple", 
  "orange", 
  // etc 
); 

$default_brand = $recognised_brands[0]; // use first from list arbitrarily. 

$brand_to_use = isset($_GET['brand']) && in_array($_GET['brand'], $recognised_brands) 
  ? $_GET['brand'] 
  : $default_brand; 

echo '<div id="' . $brand_to_use . '"></div>';  
?>

ただし、ビデオと呼ばれる2番目のクエリで同様の方法を実行する方法がわかりません。

たとえば、クエリが?brand = apple&video=redの場合

次に、ページコードのビデオ変数を赤の正しい番号に置き換えたいのですが、次のようなビデオクエリに基づいてこれらの変数のリストを追加する方法がわかりません:red => 1正しいエリア?

また、選択したビデオに基づいて、見出しテキストの一部とその下のコードの段落を変更したいのですが、これを指定するのに最適な場所がわかりません。

明確にするために:

ブランドクエリを並べ替えました。動画クエリで複数のエリアの見出し、動画ID、コンテンツdivにデータを入力する必要がありますが、方法がわかりません。

4

1 に答える 1

2

私があなたの質問を正しく理解していれば、これはあなたが探していることをするでしょう:

$videoToNum = array("red" => 1, 
                    "blue" => 2, 
                    "yellow" => 3);

$videoValue = ((isset($_GET['video']) && isset($videoToNum[$_GET['video']])) ? $videoToNum[$_GET['video']] : null);

if($videoValue) {
    echo '<div id="' . $videoValue . '"></div>';  
}

ただし、質問はかなりあいまいなので、これで解決しない場合は、さらに詳しく説明することをお勧めします。

編集:コメントで説明されているスイッチの例を次に示します。

$video = (isset($_GET['video']) ? $_GET['video'] : null);

if($video) {
    switch($video) {
        case "red":
            //do red stuff
            break;
        case "blue":
            //do blue stuff
            break;
        case "yellow":
            //do yellow stuff
            break;
    }
}
于 2012-07-13T13:13:30.903 に答える