2012-02-07 12 views
3

Google APIを使用して通貨計算機を作成していますが、ドロップダウンボックスから選択した変数を設定していないようです。PHPを使用したドロップダウンリストで変数が設定されていません

I 3つの通貨を保持する配列を作成する:

<?php 
$options = array(
    'usd' => 'USD', 
    'eur' => 'EUR', 
    'gbp' => 'GBP' 
); 
?> 

ユーザがフォームに表示される上記のいずれかの値を選択します。

<form action="" method="post "> 
    <p> 
     Amount:<br /> 
     <input type="text" name="amount" /> 
    </p> 
    <p> 
     From:<br /> 
     <input type="text" name="from" /> 
    </p> 
    <p> 
     To:<br /> 
     <select name="position">  
      <?php foreach ($options as $value => $text): ?>          
       <option value="<?php echo $value ?>" 
         <?php echo ($v['position'] == $value) ? 'selected="selected"' : '' ?> > 
          <?php echo $text ?> 
       </option> 
      <?php endforeach; ?> 
     </select> 
    </p> 
    <p> 
     <input type="submit" name="submit" /> 
    </p> 
</form> 

次の関数は、変数が設定されているかどうかを判断するために使用されていると私は私の調査結果を保証するために、結果の出てエコー。

if (isset($_POST['amount'], $_POST['from'], $_POST[$value])) { 
    $amount = (int) $_POST['amount']; 
    $from = $_POST['from']; 
    $value = $_POST['value']; 

    echo $amount; 
    echo $from; 
    echo $value; 
// echo $text; 
// echo $selected; 
// echo $options; 
// echo $v; 
    exit(); 

私は正常$amount$from変数をエコーすることができますが、私は、ドロップダウンボックスから$value変数を取得することができる理由を理解していません。

私はこの問題がフォーム自体のコーディングであると信じさせてくれる、役に立たないすべての変数をエコーアウトしようとしました。

明白な問題は何ですか?

ありがとうございます。

+0

「位置」という名前のドロップダウンリストから「値」を取得するのはなぜですか? –

答えて

1

$vはどこですか?また、$_POST[$value]が存在するのをなぜチェックしているのか分かりません。$value = $_POST['value'] ...と変更する前に$valueは何ですか?どの要素の名前はvalueですか? $_POST['position']をつかんではいけないのですか?

$_POST['position']は、常に選択メニューのどの値が選択されているかを示す変数ですが、実際にどこでも使用しているとは限りません。

+1

投稿後のURLアドレスも、変数が '$ position'であることを示しています。 – keenProgrammer

関連する問題