我有一个选择下拉菜单,其中包含三个选项;根据引用的 URL,我需要每个选项都被选中(即 selected="selected")。
我对 PHP 很陌生,但可以这样做:
<?php if (strstr( $_SERVER['HTTP_REFERER'],"url-1" )) {
?>
<option value="value-1" selected="selected">
<?
} else {
?>
<option value="value-1">
<?
}
?>
我对下拉列表中的三个选项中的每一个都执行此操作。如前所述,这是可行的——但是为每个选项重复相同的事情似乎效率很低。有人对我有任何线索吗?在此先感谢您的时间。
编辑:
感谢大家的帮助,尤其是阿德南。在另一个论坛搜索以及您的想法的帮助下,这是我理想的解决方案:
<?php
$options = array(array('value' => 'value-one', 'label' => 'value-one', 'ref' => 'url-one'),array('value' => 'value-two', 'label' => 'value-two', 'ref' => 'url-two'),array('value' => 'value-three', 'label' => 'value-three', 'ref' => 'url-three'),
);
foreach ($options as $option) {
if (strpos($_SERVER['HTTP_REFERER'], $option['ref']) > 0) {
$optSelected = ' selected';
} else {
$optSelected = '';
}
echo '<option value="' . $option['value'] . '"' . $optSelected . '>' . $option['label'] . '</option>';}
?>`