2014-01-26 50 views
-1

试图做一些简单的if语句,但得到”意想不到的{“。我在发生错误的代码中添加了一条评论。任何提示?否则,如果不工作“意外”{'在... ...“

Code: 

<?php 
if(isset($_GET['tax'])) { 
$tax = $_GET['tax']; 

if ($tax < "8900") 
{ 
    echo "Du behöver inte betala någon skatt"; 
    } 
    elseif ($tax > "8900" && $tax < "198700") 
    { 
     echo "Du behöver att betala 100 SEK i skatt"; 
    } 
    else ($tax >= "198700") 
    { //ERROR OCCURS HERE 
     echo "You have to pay (100+(0.2*$tax)) i skatt"; 
    } 

} 
?> 
+1

'else'不能有一个条件。 – mario

+1

加油。为什么如此多的反对票给新手呢?不要粗鲁。 – Rikesh

+2

很好。感谢downvote唠叨,现在有四个upvotes?任何人都在关注为什么语法错误问题现在在没有明确的研究或试图解决OP问题时得到鼓励? – mario

回答

1

else语句不能包含一个条件。

更改else ($tax >= "198700")elseif($tax >= "198700")

4
else ($tax >= "198700") 

是不是一个有效的语句。你必须要么使用:

elseif ($tax >= "198700") 

或:

else // ($tax >= "198700") 

后一个是好的假设您解决在8900会发生什么问题(目前它匹配既不是第一个两个)。你可能想:

elseif ($tax >= "8900" && $tax < "198700") 

和一对夫妇的其他东西至少检查:

  • 我不完全一定为什么你从瑞典在最后echo切换到英语 - 这似乎不协调。
  • 正如前面提到的,你似乎有一个“洞”,在8900
  • 不知道是否比较要正确这里工作。 PHP 可能处理好,但在某些情况下,"10"小于"2"
  • 我也非常确定你的字符串插值将无法按照你的预期工作。您可能需要在字符串的上下文之外计算它($pay = $tax/5 + 100;)并插入echo "Du behöver att betala $pay i skatt";)。