آموزش طراحی سایتآموزش PHP

فیلد های الزامی در php

آموزش طراحی سایت با پی اچ پی – فیلد های الزامی در php

درود به همراهان همیشگی سایت میزفا. در ادامه جلسات کنترل فرم در php با قسمت فیلد های الزامی در php در خدمت شما عزیزان هستم .

همانطور که بارها در وب سایت های مختلف دیده اید برخی فیلد های فرم ها را نمی توانید خالی رها کنید. در این جلسه به شما نحوه ی طراحی این فیلد ها را آموزش خواهیم داد.

فیلد های الزامی در php

در مثال جلسه ی اعتبارسنجی فرم در php مثالی را مشاهده کردید که دارای فیلدهای الزامی بود.

برای طراحی آن مثال باید به صورت زیر عمل کرد :

 

نام فیلد اعتبارسنجی 
نام الزامی است. فقط حروف الفبا و خط فاصله را می پذیرد
ایمیل الزامی است. باید  حاوی فرمت صحیح ایمیل باشد (به همراه علامت @ و .)
وب سایت اختیاری است. در صورتی که پر شود باید فرمت url داشته باشد.
نظرات اختیاری است. می تواند شامل چندین خط متن باشد.
جنسیت الزامی است. یکی از موارد می تواند انتخاب شود.

 

در کد ذیل ، متغیرهای جدیدی با نام های nameErr$ و emailErr$ و genderErr$ و websiteErr$ اضافه شده اند . این متغیرهای خطا ، متن خطای مورد نظر شما را برای فیلدهای الزامی نگه می دارند. ما همچنین برای هر متغیر POST_$ یک دستور if ... else اضافه کرده ایم. این دستور شرطی، چک می کند که آیا متغیر POST_$ خالی است (با استفاده از تابع ()empty) در این صورت متن خطای مورد نظر را در متغیر مربوطه قرار می دهد ، و اگر خالی نباشد  مقدار برگشتی تابع ()test_input در متغیر مربوطه ی آن  ذخیره خواهد شد :

<?php
// تعریف متغیر ها و نسبت دادن مقدار تهی به آن ها
$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

در فرم HTML  باید یک اسکریپت PHP نیز اضافه کنید.

پس از هر فیلد اجباری نیاز است که کدهای زیر را تکرار نمایید تا پیغام خطای مناسب چاپ شود.

 

<!DOCTYPE HTML>
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>

<?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"]);
}
}

function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>

<h2>PHP Form Validation Example</h2>
<p><span class="error">* required field.</span></p>
<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>
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>

<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>

</body>
</html>

 

 

خروجی :

فیلد های الزامی در php

به پایان این قسمت از آموزش PHP رسیدیم. با ما در جلسات آینده همراه باشید.

منبع : w3schools

برچسب ها

نسرين ولی خانی

کارشناسي نرم افزار علاقمند به برنامه نويسی

نوشته های مشابه

یک نظر

  1. سلام
    چطور میشه یک فیلدی که رای شماره تلفن ساختیم رو آزاد بذاریم تا کاربر مثلا با +98 dh بدون اون یا به هر شکل دیگه ای که میخواد شماره رووارد کنه؟

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
سایت خود را در گوگل مدیریت کنید + ۱۵ ساعت فیلم آموزشیجزئیات بیشتر اینجا کلیک کنید
بستن
با موفقیت ثبت شد، میزفا از شما برای عضویت در خبرنامه هفتگی تشکر میکند.

عضویت در خبرنامه هفتگی برای دریافت:

  • فیلم و مقاله رایگان سئو
  • آموزش‌های UX ، GA و GTM
  • مقاله های تخصصی ASP.NET Core
  • اطلاع رسانی از محصولات
ترک میزفا خوب نیست!
دوره سئو، رایگان شد.
یک چیز متفاوت تجربه کنید
کاراکتر اشاره گر
دوره سئو، رایگان شد.
یک چیز متفاوت تجربه کنید
کاراکتر اشاره گر