2012-07-02 95 views
0
<html> 
<head> 
<title> GRADE DETAILS </title> 
</head> 
<body> 

<?php 
$myname=$_GET ['myname']; 
$mygrade=$_GET ['mygrade']; 

if(($myname=='@' or $myname=='!')) 
{ 
    echo "Special character not allowed."; 
} 

else if($myname==" ") 
{ 
    echo "Please enter your name"; 

} 


else 
{ 
    switch($mygrade) 
{ 
case ""; 
echo "you did not enter grade"; 
break; 

case A; 
echo "Increment 30% of basic salary"; 
break; 

case B; 
echo "Increment 10% of basic salary"; 
break; 

default; 
echo"Wrong Grade"; 
break; 
} 
} 

?> 
</body> 
</html> 

我想在我的if else statement..i嘗試了很多方法來設置多個條件,但仍然沒有工作...我希望有人能幫助我。沒有用我的Switch Case,但問題只在IF ELSE..PLS HELP.Thanks。如何設置多個條件,如果else語句PHP

+0

這是一個純PHP?沒有框架? –

+0

即時通訊使用HTML框架,但我沒有發送HTML代碼在這裏.. –

回答

1

它基本上是好的,但你需要用冒號「CASE」語句後更換分號,而第二把文本串(A,B等)進入報價:

switch($mygrade) { 
    case "": 
     echo "you did not enter grade"; 
    break; 

    case "A": 
     echo "Increment 30% of basic salary"; 
    break; 

    case "B": 
     echo "Increment 10% of basic salary"; 
    break; 

    default: 
     echo "Wrong Grade"; 
    break; 
} 
+0

我改變它,因爲你說..但沒有改變與我的PHP ..只有我如果有其他問題,當我嘗試設置多個條件..(例如:如果用戶插入像「!,@,#」這樣的特殊字符,那麼「特殊字符不允許」會出來..但它沒有工作.. :( –

+0

)你想檢查,如果名稱包含特殊字符?你正在檢查名字是「@」,但是如果一個名字是「thomas @」,那麼它將不起作用。檢查路易米蘭達的答案,這是我認爲的好。 – mch

+0

ouh ya..that我是什麼想要..如果用戶插入像d @ niel這樣的符號,那麼程序會運行1st if else語句。有沒有什麼方法可以修復它? –

1

你缺少其中一些報價,AB被解釋爲常量

<?php 
$myname= trim($_GET ['myname']); 
$mygrade= trim($_GET ['mygrade']); 

if(strstr('@',$myname) or strstr('!',$myname)) 
{ 
    echo "Special character not allowed."; 
} 

else if(empty($myname)) 
{ 
    echo "Please enter your name"; 

} 


else 
{ 
    switch($mygrade) 
{ 
case "": 
echo "you did not enter grade"; 
break; 

case 'A': 
echo "Increment 30% of basic salary"; 
break; 

case 'B': 
echo "Increment 10% of basic salary"; 
break; 

default: 
echo"Wrong Grade"; 
break; 
} 
} 
1

這是一個純PHP?下面我有我的答案。但是,我不建議你繼續這樣做。您可以搜索其他可以幫助您驗證的類或框架。這也可能在注射時很容易發生。

要回答你的問題:(基本上)

$invalid = array("@", "!"); 
if (in_array($myname, $invalid)) { 
    echo 'Special character not allowed.'; 
} 

if (empty($myname)) { 
    echo "Please enter your name"; 
} 

if (!empty($mygrade)) { 
    switch($mygrade) { 
     case "": 
     echo "you did not enter grade"; 
     break; 

    case "A": 
     echo "Increment 30% of basic salary"; 
     break; 

    case "B": 
     echo "Increment 10% of basic salary"; 
     break; 

    default: 
     echo "Wrong Grade"; 
     break; 
    } 
} 
else { 
    echo 'Grade was empty'; 
} 
+0

仍然沒有工作。 :( –