2012-08-13 31 views
0

我在PHP編程中相當體面,我知道這種類型的錯誤意味着我錯過了一些東西,但我似乎無法弄清楚我錯過了什麼。我有他們應該在的所有括號和分號。我不知道爲什麼會出現這個錯誤。這是下面的代碼:爲什麼這個解析錯誤顯示?

解析錯誤:語法錯誤,在C意想不到T_VARIABLE:\程序文件(x86)\的EasyPHP-5.3.9 \ WWW \網站的東西\ form.php的第44行

<?php 
error_reporting (E_ALL^E_NOTICE); 

$to = "[email protected]"; 
$subject = "Submitions from College/University Admission Services Form"; 

$Sname = $_POST["Sname"]; 
$Fname = $_POST["Fname"]; 
$Mname = $_POST["Mname"]; 
$Lname = $_POST["Lname"]; 
$email = $_POST["email"]; 
$history = $_POST["history"]; 
$age = $_POST["age"]; 
$sex = $_POST["sex"]; 
$country = $_POST["country"]; 
$SchoolsAttended = $_POST["SchoolsAttended"]; 
$CriminalRecord = $_POST["CriminalRecord"]; 
$record = $_POST["record"]; 
$status = $_POST["status"]; 

$body = <<<EMAIL 

Form submitted from $Fname $Lname. 

Surname field: $Sname 
First name field: $Fname 
Middle name field: $Mname 
Last name field: $Lname 
History field: $history 
Age: $age 
Sex: $sex 
Country: $country 
Schools Attended: $SchoolsAttended 
Criminal Record: $CriminalRecord 
If yes was selected, list of details: $record 
Marital Status: $status 

From, $Fname 

EMAIL; 

$header = "From: $email"; 
if($_POST){ 
    if($Sname == '' || $Fname == '' $Mname == '' || $Lname == '' $email == '' || $history == '' $age == '' || $sex == '' $country == '' || $SchoolsAttended == '' $CriminalRecord == '' || $status == ''){ 
    $feedback = "Fill out all the fields please before submitting"; 
}else{ 
mail($to, $subject, $body, $header); 
$feedback ="Thanks for your submition! Your form has been sent!"; 
} 
    } 
    ?> 
    <p id="feedback"><?php echo $feedback; ?></p> 
<form style="padding: 10px;" method="post" action="?"> 
    Surname: <input type="text" maxlength="12" name="Sname"><br /><br /> 
    First Name: <input type="text" maxlength="12" name="Fname"><br /><br /> 
    Middle Name: <input type="text" maxlength="12" name="Mname"><br /><br /> 
    Last Name: <input type="text" maxlength="36" name="Lname"><br /><br /> 
    Email: <input type="text" maxlength="36" name="email"><br /><br /> 
    History: <input type="text" maxlength="50" name="history"><br /><br /> 
    Age: <input type="text" size="1" maxlength="2" name="age"><br /><br /> 
    Sex: <input type="radio" value="Male" name="sex">Male<input type="radio" value="Female" name="sex">Female<br /><br /> 
    Country of Origin: <select name="country"> 
     <option value="Select">-Select a Country-</option> 
    <option value="United States">United States</option> 
    <option value="Africa">Africa</option> 
    <option value="Canada">Canada</option> 
      </select><br /><br /> 
    Schools Attended: <input type="text" name="SchoolsAttended"><br /><br /> 
    Do you have a criminal record? <input type="radio" value="yes" name="CriminalRecord">Yes <input type="radio" value="no" name="CriminalRecord">No<br /><br /> 
    If yes was selected, please list them in the field provided: <input type="text" name="record"><br /><br /> 
    Marital Status: <select name="status"> 
    <option value="select">-Select your status-</option> 
    <option value="single">Single</option> 
    <option value="married">Married</option> 
    <option value="divorced">Divorced</option> 
    <option value="widowed">Widowed</option> 
     </select><br /><br /> 
    <input class="button" type="submit" value="submit" name="submit"> <input class="button" type="reset" value="Reset" name="reset" /> 
    </form> 

感謝您的幫助!這可能是一個小問題! -TechGuy24

+1

當你理解了語法錯誤是什麼,你需要了解XSS和HTML注入。 – hakre 2012-08-13 16:14:01

+0

除^以外,請仔細閱讀。 http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php – Sgarz 2012-08-13 16:17:11

+0

Protip:錯誤可能是第44行。 – Andrew 2012-08-13 16:24:53

回答

8

您錯過了一堆||

例如:

$history == '' $age == '' 

應該是:

$history == '' || $age == '' 
+0

這絕對解決它,我不知道如何我錯過了......我想我一直在看代碼太久,我忽略了簡單的東西。感謝耐心! – WebDeVGuy24 2012-08-13 16:22:53

相關問題