我正在使用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 :(得分:0)
据我所知,$marke
是一个数组,很可能$_POST['marke']
是一个字符串或int。
if ($marke['title']==$post) {
而不是
// You'd be comparing a $marke array with $_POST['marke'] string
if ($marke==$post) {