这是我用来显示下拉值的代码:
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 [&#39; input_13&#39;],它的值是美国。为什么我没有得到if案例的结果。
答案 0 :(得分:1)
试试此代码
if($_POST['input_13']==='United States'){
三个等号带来更多精确度。
另一种方式是:
if($_POST["input_13"]=="United States"){
使用双引号,但这不会产生太大影响,但测试相同。
一般来说对我来说你的代码很完美,但服务器有时无法正常工作。