如果条件多-更好的方式-PHP
我有一个国家下拉列表,取决于数据库值,我想显示一个选定的国家 下面的代码可以工作如果条件多-更好的方式-PHP,php,Php,我有一个国家下拉列表,取决于数据库值,我想显示一个选定的国家 下面的代码可以工作 <?php if ($associate_details["country"]=="AU"){ echo "selected";} ?> 我的问题是,有没有更好的方式来显示选择的国家,而不写那么多的if条件 <select style="margin-left:1.5em;" name="associate_country"> <option value="US" >Uni
<?php if ($associate_details["country"]=="AU"){ echo "selected";} ?>
我的问题是,有没有更好的方式来显示选择的国家,而不写那么多的if条件
<select style="margin-left:1.5em;" name="associate_country">
<option value="US" >United States of America</option>
<option value="AR">Argentina</option>
<option value="AA">Armenia</option>
<option value="AW">Aruba</option>
<option value="AU" <?php if ($associate_details["country"]=="AU"){ echo "selected";} ?>>Australia</option>
美利坚合众国
阿根廷
亚美尼亚
阿鲁巴
您可以使用一些javascript/jquery在事件发生后进行设置
var country = '<?php echo $associate_details["country"];?>';
$("select[name='associate_country']").val(country);
var国家=”;
$(“选择[name='associate_country']”)val(国家);
但是如果你的国家存储在一个数组中,那么你可以这样做
$countries = [["name"=>"australia","code"=>"AU"], etc etc];
echo "<select style='margin-left:1.5em;' name='associate_country'>";
foreach($countries as $value){
echo "<option value='".$value['code']."' ";
if ($associate_details["country"]==$value['code']) { echo "selected" ;};
echo ">".$value['name']."</option>";
}
$countries=[[“name”=>“australia”、“code”=>“AU”等];
回声“;
foreach(按美元价值计算的国家){
回显“$value['name']”;
}
您可以使用一些javascript/jquery在事后进行设置
var country = '<?php echo $associate_details["country"];?>';
$("select[name='associate_country']").val(country);
var国家=”;
$(“选择[name='associate_country']”)val(国家);
但是如果你的国家存储在一个数组中,那么你可以这样做
$countries = [["name"=>"australia","code"=>"AU"], etc etc];
echo "<select style='margin-left:1.5em;' name='associate_country'>";
foreach($countries as $value){
echo "<option value='".$value['code']."' ";
if ($associate_details["country"]==$value['code']) { echo "selected" ;};
echo ">".$value['name']."</option>";
}
$countries=[[“name”=>“australia”、“code”=>“AU”等];
回声“;
foreach(按美元价值计算的国家){
回显“$value['name']”;
}
除非您将国家/地区存储在数组中-否。您的选项的所有值都是硬编码的吗?您是否在数据库或数组中的任何位置定义了它们?“这么多条件”?我只看到一个。。。将所有国家/地区放置在一个数组中,并迭代所有条目。这样,您总共只需要实现一个条件。@dukedevil294 hardcoded是的,就像第一位评论者所写的,除了您已经开始的内容(假设您在PHP中需要这个),没有其他方法可以设置任何内容,因为您只有硬编码的值来比较您的数据库值。如果您将其更改为从数据库中提取国家/地区缩写,则可以循环所有这些值的数组,并将每个值与$associate_details[“country”]进行比较,以确定是否应选择它。除非您将国家/地区存储在数组中-否。您选项的所有值都是硬编码的吗?您是否在数据库或数组中的任何位置定义了它们?“这么多条件”?我只看到一个。。。将所有国家/地区放置在一个数组中,并迭代所有条目。这样,您总共只需要实现一个条件。@dukedevil294 hardcoded是的,就像第一位评论者所写的,除了您已经开始的内容(假设您在PHP中需要这个),没有其他方法可以设置任何内容,因为您只有硬编码的值来比较您的数据库值。如果将其更改为从数据库中提取国家/地区缩写,则可以循环所有这些值的数组,并将每个值与$associate_details[“country”]进行比较,以确定是否应选择它。