2016-06-21 16 views
0

私の問題は以前に選択されたwhileループで表示することです。私はループではないセットアップでそれを行う方法を見つけましたが、ループは私にとっては問題です。ドロップダウン - 以前にループ内で選択された表示

<?php 

foreach($countries as $key => $value) { ?> 

<option value="<?= $value . ' ' . $key ?>" title="<?= htmlspecialchars($value) ?>"><?= htmlspecialchars($value) ?></option> 

<?php } ?> 

そして、それは良い作品:

次のコードは、私の国(と国コード)のドロップダウンを与えます。しかし、誰かが自分の国を編集していると想像してください。もちろん、以前に選択された特定の国の変数があります...ありがとう。構文で

<?php 

foreach($countries as $key => $value) { ?> 
<?php if ($previousCountry == $value) ?> 
    <option selected value="<?= $value . ' ' . $key ?>" title="<?= htmlspecialchars($value) ?>"><?= htmlspecialchars($value) ?></option> 
<?php else ?> 
    <option value="<?= $value . ' ' . $key ?>" title="<?= htmlspecialchars($value) ?>"><?= htmlspecialchars($value) ?></option>> 

<?php } ?> 

わからないが、値は、あなたがそれに選択属性を入れて、前の国と同じである場合は、検出する必要があります:

+1

ヒント:? '<= 'や' short_tags'は常に有効ではありません。あなたのコードがphp.iniの設定に関係なく常に動作するようにするには、<?php echoと置き換えてください。 – zanderwar

+0

便利です! –

答えて

1
<?php 
$preselected = 'whatever_previous_selected'; 

foreach($countries as $key => $value) { ?> 

<option value="<?php $value; ?>" title="<?= htmlspecialchars($value) ?>" <?php if($preselected == $value) {echo "selected='selected'"; }?>> 
<?= htmlspecialchars($value) ?> 
</option> 

<?php } ?> 
+0

ありがとう、私は今、道を見つけるだろうと確信しています。このフォーラムでは、寛大さは極端です! –

1

はこれを試してみてください。

0

編集時にIDを取得するとselected='selected'を使用してください。

<?php 
$id = 1; // In edit you get some value here 
foreach($countries as $key => $value) { 
$selected = (isset($id) && $id == $key) ? "selected='selected'" : ""; 
?> 

<option value="<?= $value . ' ' . $key ?>" title="<?= htmlspecialchars($value) ?>" <?php echo $selected ?>><?= htmlspecialchars($value) ?></option> 

<?php } ?> 
0

これを試してみてください。

<?php 
$prevSelectedCountry; 

foreach($countries as $key => $value) { ?> 

<option <?php echo ($prevSelectedCountry == $value . ' ' . $key)?"selected='selected'":"" ?> value="<?= $value . ' ' . $key ?>" title="<?= htmlspecialchars($value) ?>"><?= htmlspecialchars($value) ?></option> 

<?php } ?> 
関連する問題