--
Diterjemahkan dari: http://www.w3schools.com/php/php_form_required.asp
--
Memproses PHP Form Menggunakan Required Fields
Bab ini menunjukkan bagaimana untuk membuat required fields dan membuat error message jika diperlukan.
Medan yang diperlukan - PHP
Jadual di bawah menunjukkan bahawa maklumat "Nama", "E-mel", dan "jantina" mesti dipenuhkan. Ia tidak boleh kosong dan perlu diisi dalam HTML Form.
Field
|
Validation Rules
|
Name
|
Required. + Must only contain letters and whitespace
|
E-mail
|
Required. + Must contain a valid email address (with @ and .)
|
Website
|
Optional. If present, it must contain a valid URL
|
Comment
|
Optional. Multi-line input field (textarea)
|
Gender
|
Required. Must select one
|
Dalam bab yang lepas, semua bidang input adalah pilihan.
Dalam kod berikut kita akan menambah beberapa variable baru: $ nameErr, $ emailErr, $ genderErr, dan $ websiteErr. Error variable akan menyimpan error message bagi setiap field yang berkaitan. Kita juga akan menambah arahan semakan “if .. else” bagi setiap pembolehubah $ _POST. Jika variable $ _POST kosong, error message akan disimpan dalam error variable, dan jika ia tidak kosong, data akan dihantar melalui test_input() function.
<?php
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
if (empty($_POST["name"]))
{$nameErr = "Name is required";}
else
{$name = test_input($_POST["name"]);}
if (empty($_POST["email"]))
{$emailErr = "Email is required";}
else
{$email = test_input($_POST["email"]);}
if (empty($_POST["website"]))
{$website = "";}
else
{$website = test_input($_POST["website"]);}
if (empty($_POST["comment"]))
{$comment = "";}
else
{$comment = test_input($_POST["comment"]);}
if (empty($_POST["gender"]))
{$genderErr = "Gender is required";}
else
{$gender = test_input($_POST["gender"]);}
}
?>
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
if (empty($_POST["name"]))
{$nameErr = "Name is required";}
else
{$name = test_input($_POST["name"]);}
if (empty($_POST["email"]))
{$emailErr = "Email is required";}
else
{$email = test_input($_POST["email"]);}
if (empty($_POST["website"]))
{$website = "";}
else
{$website = test_input($_POST["website"]);}
if (empty($_POST["comment"]))
{$comment = "";}
else
{$comment = test_input($_POST["comment"]);}
if (empty($_POST["gender"]))
{$genderErr = "Gender is required";}
else
{$gender = test_input($_POST["gender"]);}
}
?>
PHP – Paparan Error Message
Kita akan menambah skrip selanjutnya selepas setiap field, yang menghasilkan error message yang betul jika diperlukan (iaitu jika pengguna cuba untuk menyerahkan borang tanpa mengisi medan yang diperlukan):
Contoh
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name: <input type="text" name="name">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail:
<input type="text" name="email">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website:
<input type="text" name="website">
<span class="error"><?php echo $websiteErr;?></span>
<br><br>
<label>Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<span class="error">* <?php echo $genderErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
Name: <input type="text" name="name">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail:
<input type="text" name="email">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website:
<input type="text" name="website">
<span class="error"><?php echo $websiteErr;?></span>
<br><br>
<label>Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<span class="error">* <?php echo $genderErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
Langkah seterusnya adalah untuk mengesahkan data input, contohnya "Adakah Nama mengandungi hanya huruf dan white space?", Dan "Adakah E-mel mengandungi syntax alamat e-mel yang sah?", Dan jika diisi, " Adakah Laman Web mengandungi URL yang sah? ".
--
Tiada ulasan:
Catat Ulasan