我對整個編程的事情相當陌生,所以請原諒我,如果這是一個愚蠢的問題。看起來很奇怪,我以前沒有遇到過它。我的IF語句正在改變PHP中的變量
我正在嘗試爲一個蛋糕作出訂單。您填寫表格並提交,然後它會在新窗口中顯示訂單,然後點擊「提交」,然後將其上傳到數據庫。在提交之前,我有一系列If語句來檢查表單中的錯誤。這是代碼的簡化版本。寫作意味着你想在蛋糕上寫下任何你想寫的東西,名字就是你的名字,而蛋糕就是你想要的蛋糕類型(默認爲「無」)。
try {
$name = trim($params->name);
$cake = trim($params->cake);
$writing = trim($params->writing);
if (strlen($name) < 3){
throw new Exception("Please enter Your name.");
}
if ($cake = "None") {
throw new Exception("Please select a Cake"
}
if ($cake = "Caramel Apple Pie" or $cake = "Pumpkin Pie" or $cake = "Eggnog Pie" and strlen($writing) > 1) {
throw new Exception("We are sorry, but you can't write on any of our specialty pies.");
}
} catch(Exception $x) {
$error = $x->getmessage();
}
所以發生的是,當我去擊中提交的第一次,正確的蛋糕類型來了,但是當你提交的第二次,錯誤出現說我有「無」選擇。所有其他值都在那裏並保持不變。我認爲問題在於,第一個「IF」聲明(它說「If($ cake =」None「))會自動將$ cake更改爲」None「,因爲我已經嘗試對該聲明進行評論,然後它會改變蛋糕是「焦糖蘋果餡餅」,這是在未來的IF語句的頂部。
任何人都知道它爲什麼這樣做?以及如何解決它?
單個等於是分配。雙等於檢查平等。 – ceyko