나는 PHP 프로그래밍에서 꽤 괜찮은 사람이고, 이런 유형의 오류가 내가 뭔가를 놓치고 있다는 것을 알지만, 내가 누락 된 부분을 찾아 낼 수가 없다. 나는 모든 괄호와 세미콜론을 사용해야한다. 왜이 오류가 표시되는지 모르겠습니다.왜이 구문 분석 오류가 표시됩니까?
구문 분석 오류 : 구문 오류, C에서 예상치 못한 T_VARIABLE : \의 Program Files (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
, 당신은 XSS 및 HTML 인젝션에 대해 배울 필요가있다. – hakre
^이외에, 이것을 아주주의 깊게 읽으십시오. http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php – Sgarz
Protip : 오류는 아마도 44 번 줄에 있었을 것입니다. – Andrew