这是我用来显示下拉值的代码:
switch ($_POST['input_102']) {
case 14:
$mailling=$mailling.'<li>Priority mail (domestic/US only) <span>$14.00</span></li> ';
break;
case 40:
$mailling=$mailling.'<li>Courier/Express (domestic/US only) <span>$40.00</span></li> ';
break;
case 14:
$mailling=$mailling.'<li>Air Mail (overseas/international) <span>$14.00</span></li> ';
break;
case 80:
$mailling=$mailling.'<li>Courier/Express (overseas/international) <span>$80.00 </span></li> ';
break;
}
这里我遇到了一个问题,我有两个值,比如14。所以我像这样修改了代码。它执行了,但是当if语句执行时,它什么也不显示,而else语句则显示结果:
switch ($_POST['input_102']) {
case 14:
//custom code
if($_POST['input_13']=='United States'){
$mailling=$mailling.'<li>Priority mail (domestic/US only) <span>$14.00</span></li> ';
}else{
$mailling=$mailling.'<li>Air Mail (overseas/international) <span>$14.00</span></li> ';
}
//custom code end
break;
case 40:
$mailling=$mailling.'<li>Courier/Express (domestic/US only) <span>$40.00</span></li> ';
break;
case 80:
$mailling=$mailling.'<li>Courier/Express (overseas/international) <span>$80.00 </span></li> ';
break;
}
我打印了$_POST['input_13'],它的值是美国。为什么我没有得到if的结果
试试这个代码
if($_POST['input_13']==='United States'){
三个等号可以提高精度。
另一种方式是: if($_POST["input_13"]=="United States"){
加双引号,但影响不大,但是test equal。
总的来说对我来说你的代码是完美的,但是,服务器有时不能正常工作