2017-01-27 1 views
0

jsonファイルのオプションを選択ボックスに入力し、値を$_POSTから選択しようとしています。私はオプションとして印刷されたすべての値を取得しますが、選択されていません。
$marke$postを比較すると何かが間違っているように見えるので、何も選択されません。

<select name="marke" id="marke"class="form-control"> 
    <?php 
    $url = 'includes/lists/models.json'; 
    $jsonData = file_get_contents($url); 
    $jsonDataObject = json_decode($jsonData, true); 
    $post = $_POST['marke']; 
    $i = 0;    
    echo '<option>--</option>'; 
    foreach ($jsonDataObject['markes'] as $marke) { 
     if ($marke==$post) { 
      echo '<option selected value="'.$marke['title'].'" id="'.$i.'">'.$marke['title'].'</option>'; 
     }else{ 
      echo '<option value="'.$marke['title'].'" id="'.$i.'">'.$marke['title'].'</option>'; 
     } 
     $i++; 
    } 
    ?> 
</select> 

p.s $_POST['marke']が正しく設定されています。

+0

'エコー '<オプション選択= "選択" 値="'。$のマルケ[ 'タイトル']。 ' "ID ="'。$ I。」」 > '$ marke [' title ']' ' ';' –

+0

これを試してみてください。変更はありません。 – Ernestas

+1

は、生成されたHTMLのソースを表示し、何が間違っているかを見ることができます。 – BizzyBob

答えて

0

私が理解しているように、$markeは配列であり、おそらく$_POST['marke']は文字列またはintです。

if ($marke['title']==$post) { 

代わりの

// You'd be comparing a $marke array with $_POST['marke'] string 
if ($marke==$post) { 
+0

これは助けになりました。ありがとうございました! – Ernestas

関連する問題