2016-11-09 5 views
0

私はPHPを初めて使いこなしています。 しかし、私は選択されたチェックボックスごとに配列をエコーするように働いていません 私はSchaatsenを選択しました。画面上に配列schaatsenを見たいと思っています。 ヘルプありがとうございました。PHPは選択ボックスごとに特定の配列をエコーし​​ます

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="UTF-8"> 
     <title>Merijn</title> 
    </head> 
    <body> 
     <form action="" method="GET"> 
      <select name="option"> 
       <option value="schaatsen">Schaatsen</option> 
       <option value="alpineskieen">Alpineskieen</option> 
       <option value="snowboarden">Snowboarden</option>  
       <option value="ijshockey">IJshockey</option> 
       <option value="rodelen">Rodelen</option>   
      </select> 
      <input type="submit" name="submit"> 
     </form> 
     <?php 
     $evenementen = array 
     (
     "schaatsen"=>array 
       (
       "Heren 500 meter", 
       "Heren 1000 meter", 
       "Heren 1500 meter", 
       "Heren 5 Kilometer", 
       "Vrouwen 500 meter", 
       "Vrouwen 1000 meter", 
       "Vrouwen 1500 meter", 
       "Vrouwen 3000 meter" 
       ), 
     "alpineskieen"=>array 
       (
       "Slalom Mannen", 
       "Slalom Vrouwen", 
       "Reuzenslalom Mannen", 
       "Reuzenslalom Vrouwen", 
       "Super-G Mannen", 
       "Super-G Vrouwen" 
       ), 
     "snowboarden"=>array 
       (
       "Slopestyle Mannen", 
         "Slopestyle Vrouwen", 
       "Halfpipe Mannen", 
       "Halfpipe Vrouwen", 
       "Boardcross Mannen", 
       "Boardcross Vrouwen", 
       "Freestyle Mannen", 
       "Freestyle Vrouwen" 
       ), 
     "ijshockey"=>array 
       (
       "Kwalificatie Rondes", 
         "1/8 Finale", 
       "1/4 Finale", 
       "1/2 Finale", 
       "Finale" 
       ), 
     "rodelen"=>array 
       (
       "Individueel Mannen", 
         "Individueel Vrouwen", 
       "Dubbel Mannen", 
       "Dubbel Vrouwen", 
       "Teamestafette" 
       ) 
      ); 

      if(isset($_GET["option"])){ 
       $option = $_GET["option"]; 
       switch ($option){ 
        case "schaatsen": 
         echo $evenementen["schaatsen"]; 
        break; 
        case "alpineskieen": 
         echo $evenementen["alpineskieen"]; 
        break; 
        case "snowboarden": 
         echo $evenementen["snowboarden"]; 
        break; 
        case "ijshockey": 
         echo $evenementen["ijshockey"]; 
        break; 
        case "rodelen": 
         echo $evenementen["rodelen"]; 
        break; 
       } 
      } 
     ?> 
    </body> 
</html> 
+0

は、PHP、ネストされたループしてHTMLのDOMをレンダリング、およびJavaScriptでユーザーインターフェイスを扱う:

は、リファレンスを参照してください。 – Benyi

+0

申し訳ありませんが、私はこれを初めて知っていることを理解していません!私はこれだけPHPとHTMLでこれを行う必要があります –

+0

あなたは2つの選択肢があります。 1つは親であり、もう1つは子です。私が間違っていないなら、あなたが望むのは、あなたが親を選択するときです、子供の選択が表示されます、そうですか? 'PHP'は親が選択されたときにその子の選択を変更することはできません。ページの読み込み時にのみ 'HTML'要素をレンダリングすることができます。だから、 'PHPハイパーテキスト・プリプロセッサ'と呼ばれています。リロードしないと、親の選択でユーザーが選択した内容を取得できません。 2つの選択肢、1. 'GET'メソッドでフォームを送信し、子のURLパラメータを読んでください。 2. 'JavaScript'を使用して、選択された親に対して子選択を再ロードします。あなたは何をしているのですか? – Benyi

答えて

0

URLパラメータから$_GET['option']を読み、配列を使用しようとしているものPHPを教えてください。各オプションの

<?php 
if(isset($_GET["option"])){ 
    $option = $_GET["option"]; 
    switch ($option){ 
     case "schaatsen": 
      $child = $evenementen["schaatsen"]; 
     break; 
     case "alpineskieen": 
      $child = $evenementen["alpineskieen"]; 
     break; 
     case "snowboarden": 
      $child = $evenementen["snowboarden"]; 
     break; 
     case "ijshockey": 
      $child = $evenementen["ijshockey"]; 
     break; 
     case "rodelen": 
      $child = $evenementen["rodelen"]; 
     break; 
    } 
} ?> 

<select name="child-option"> 
    <?php foreach ($child as $item) { ?> 
     <option><?php $item ?></option> 
    <?php } ?> 
</select> 

使用foreach($child as $item)PHP foreach

+0

もし必要ならば、空の状況で '$ _GET ['options']'を($ _GET ['option'])foreach($ child as $ item){'で処理する。 – Benyi

関連する問題