저는 PHP에 익숙하지 않아, 제가 작업해온 웹 사이트에 PHP 폼 유효성 검사를 구현하고 싶습니다. 이전에는 자바 스크립트를 사용하여 양식 내용의 유효성을 검사했지만 PHP가 더 나은 방법이라고 들었습니다.PHP 폼 유효성 검사 및 오류보고
필자는 필드를 검증 할 수 있도록 일부 웹 사이트를 구현하려고 시도했지만 현재는 아무 것도하지 않아야한다고 생각합니다. 이상적으로는 어떤 사용자 확인이 양식을 싶습니다
<form method= "POST" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<p class="ex"><strong>Full Name:</strong>
<br>
<input type="text" name="name" value="<?php echo htmlspecialchars($name);?>">
<span class="error"><?php echo $nameErr;?></span>
<br><br>
<strong>Contact Telephone:</strong>
<br>
<input type="text" name="tele" placeholder="Telephone Number" id="tele""/>
<br><br>
<strong>Contact Email:</strong>
<br>
<input type="text" name="email" placeholder="[email protected]" id="email""/>
<!-- Party requirments -->
<br><br>
<strong>Select Party Size:</strong>
<br>
<select name="party" id="party">
<option value="">Please Select</option>
<option value="5">1 Person (£5)</option>
<option value="10">2 People (£10)</option>
<option value="15">3 People (£15)</option>
<option value="20">4 People (£20)</option>
<option value="25">5 People (£25)</option>
<option value="30">6 People (£30)</option>
<option value="35">7 People (£35)</option>
<option value="40">8 People (£40)</option>
<option value="45">9 People (£45)</option>
<option value="50">10+ People (£50)</option>
</select>
<br><br>
<strong>Dietary Requirements:</strong>
<br>
Vegetarian <input type="checkbox" name="diet[]" value="Vegetarian">
Vegan <input type="checkbox" name="diet[]" value="Vegan">
Peanut Allergy <input type="checkbox" name="diet[]" value="Peanut Allergy">
Gluten Allergy <input type="checkbox" name="diet[]" value="Gluten Allergy">
<br><br>
<strong> VIP Area? </strong>
<br>
Yes (+£5) <input name="hand" id="left" value="5" type="radio">
No <input name="hand" id="right" value="0" checked="" type="radio">
<br><br>
<strong> Reservation Date: </strong>
<br>
<input type="text" name="reservation" placeholder="DD/MM/YYYY" id="reservation">
<br><br>
<strong> Reservation Time </strong>
<br>
<select name="time" id="time" onblur="validateTime(name)">
<option value="">Please Select</option>
<option value="17:00">17:00</option>
<option value="17:30">17:30</option>
<option value="18:00">18:00</option>
<option value="18:30">18:30</option>
<option value="19:00">19:00</option>
<option value="19:30">19:30</option>
<option value="20:00">20:00</option>
<option value="20:30">20:30</option>
<option value="21:00">21:00</option>
<option value="21:30">21:30</option>
<option value="22:00">22:00</option>
</select>
<span id="timeError" class="timeError" style="display: none;">You must select a time for your reservation.</span>
<br><br>
<strong> Any Additional Information: </strong>
<br>
<textarea name="comments" placeholder="Birthday celebration arrangements, etc." rows="10" cols="50"></textarea>
<br><br><br>
<strong> Total booking cost based on party size & VIP selection: £<span id="price">0</span></strong>
<br><br><br>
<input type="submit" id="submit" name="submit" value="Submit">
<input type="reset" value="Reset form">
: 내가 작업하고있는 HTML 양식 여기
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Missing";
}
else {
$name = $_POST["name"];
}
if (empty($_POST["tele"])) {
$teleErr = "Missing";
}
else {
$tele = $_POST["tele"];
}
if (empty($_POST["email"])) {
$emailErr = "Missing";
}
else {
$email = $_POST["email"];
}
if (empty($_POST["party"])) {
$partyErr = "You must select 1";
}
else {
$party = $_POST["party"];
}
if (!isset($_POST["hand"])) {
$handErr = "You must select 1 option";
}
else {
$hand = $_POST["hand"];
}
if (empty($_POST["reservation"])) {
$reservationErr = "Missing";
}
else {
$reservation = $_POST["reservation"];
}
if (empty($_POST["time"])) {
$timeErr = "You must select a time";
}
else {
$time = $_POST["time"];
}
}
?>
됩니다 : 여기
내가 현재 작업하고있는 PHP 코드 잘못된 정보를 필드에 입력했거나 필드를 비워두면 오류 메시지가 입력되고 표시됩니다. 이 도움을 얻는 데 도움이되는 제안이있는 사람은 누구나이 작업을 위해 열심히 노력했지만 havent에는 많은 행운이있었습니다. (
답장을 보내 주셔서 감사합니다. 기본적으로 웹 페이지를 열어 제출을 클릭하면 빈 필드로 나타나는 오류 대신 빈 페이지로 연결됩니다. 또한 웹 페이지를 열면 이름 필드의 빈 상자 대신 " php echo htmlspecialchars ($ name);?>"라고 인쇄됩니다. ( – 05K3
오류보고가 꺼져 있기 때문에 빈 페이지가있을 수 있습니다. . 아파치 로그 또는 error.log를 확인하여 문제가 무엇인지 확인하십시오. 발생한 오류가 있으면 우리에게 연락하십시오. – LukasS