به کمک نیاز داری؟

گروه کسب و کار ساکوراد
فهرست
آموزش زبان PHP

آموزش زبان PHP | کنترل وارد نمودن اطلاعات اجباری توسط کاربر در فرم های PHP

کنترل وارد نمودن اطلاعات اجباری توسط کاربر در فرم های PHP

در راهکار قبلی ، با نحوه طراحی یک فرم ساده HTML آشنا شدید . اما فرم قبلی بسیار ساده و بدون هیچ امکاناتی بود . یکی از ایرادات فرم قبل این بود که کاربر می توانست حتی بدون وارد کردن داده های لازم در فیلد های فرم ، آن را ارسال یا Submit نماید.

به عبارت دیگر کاربر اجباری به پر کردن فیلدهای داده ای نداشت . اما در اکثر اوقات شما نیاز دارید تا کاربر اطلاعاتی را حتما در فیلدهای داده ای وارد نماید . در اینجاست که باید از مکانیزمی استفاده نموده تا آنها را مجبور به وارد نمودن اطلاعات کرده و در غیر اینصورت پیام هشدار صادر می کند .

در این راهکار قصد داریم تا نحوه چک کردن مقادیر ورودی توسط کاربر در فیلدهای فرم و در صورت لازم ، اعلام پیام هشدار به وی را آموزش دهیم .

اعضای شبکه مشاوران در حوزه «برنامه‌نویسی، وب و امنیت سایبری»

مشاور مدیریت، برنامه‌ریزی و سئو | مترجم انگلیسی

اگر به دنبال بکارگیری آخرین متدهای جهانی مدیریت منابع انسانی...

مشاور تحقیقات بازار، بازاریابی و فروش

اگر علاقمندید در تراز شرکتهای بزرگ و صاحب‌نام، بخش بازاریابی...

مشاور مسیریابی شغلی، کارآفرینی و استارتاپ

اگر به دنبال موفقیت در کارآفرینی و یا داشتن کسب...

مشاور شبکه، نرم افزار و هوش مصنوعی

اگر به دنبال رفع چالشهای شبکه، نرم‌افزار و امنیت فضای...

مثال زیر یک فرم ثبت نام در PHP را نشان می دهد ، که در آن چندین فیلد برای وارد نمودن داده ها ، یک دکمه رادیویی جهت تعیین جنسیت و یک دکمه برای ارسال یا Submit فرم قرار دارد .

در این فرم ، همانطور که در جدول معرفی انواع فیلدهای آن نشان داده شده ، وارد نمودن مقدار برای فیلدهای ” Name ” و ” E-mail ” و همچنین انتخاب یک گزینه از جنسیت اجباری است . اما سایر فیلدها می توانند به دلخواه کاربر پر شده یا خالی رها شوند .
به فرم زیر و جدول فیلدهای آن دقت نمایید :

کد <form method=”post” action=”/php/demo_form_validation_complete.php”>
Name:  <input type=”text” name=”name” value=””>
<span class=”error”>* </span>
<br>
E-mail: <input type=”text” name=”email” value=””>
<span class=”error”>* </span>
<br>
Website: <input type=”text” name=”website” value=””>
<span class=”error”></span>
<br>
Comment: <textarea name=”comment” rows=”5″ cols=”40″></textarea>
<br>
Gender: <input type=”radio” name=”gender” value=”female”>Female
<input type=”radio” name=”gender” value=”male”>Male <span class=”error”>* </span>
<br>
   <input type=”submit” name=”submit” value=”Submit”>
</form>
خروجی

PHP Form Example

Name: *

E-mail: *

Website:

Comment:

Gender: Female Male *

نحوه طراحی کد لازم جهت چک نمودن ورودی های کاربر :

کد زیر عملیات چک کردن ورودی های لازم در فیلدهای مورد نظر را انجام داده و در صورت وارد نکردن هر کدام ، یک پیام هشدار صادر می کند .
برای این منظور در ابتدا 4 متغیر NameErr$ و genderErr$ و EmailErr$ و WebsiteErr$ را تعریف کرده ایم . این متغیرها ، برای دریافت و نمایش پیام های هشدار در صورت خالی بودن هر کدام از فیلدهای اجباری به کار می روند .
همچنین به ازای هر متغیر ارسال شده از سوی فرم توسط متد POST ، یک دستور شرطی if طراحی شده که مقدار متغیر را توسط ( ) 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”]);}
}

?>

نحوه نمایش پیام های هشدار در صورت خالی بودن فیلدهای اجباری در فرم :

در مرحله بعدی ، ما یک قطعه کد اسکریپت را پس از هر فیلد لازم و اجباری به صورت زیر اضافه کرده ، تا در صورت خالی گذاشته شدن آن فیلد توسط کاربر و Submit فرم ، پیام هشدار لازم را به وی اعلام نماید .

کد <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>

نکته : اگر هر فیلدی پر شود ، متغیر پیام خطای مربوط به آن خالی بوده و در نتیجه خروجی پیام خطا برای آن فیلد ، نخواهیم داشت . حال که توانستیم پرکردن فیلدهای اجباری توسط کاربر را کنترل نماییم ، باید به اعتبار سنجی داده های ورودی توسط کاربر بپردازیم . در مرحله بعد قصد داریم تا شما را با نحوه اعتبار سنجی اطلاعات ورودی توسط کاربر آشنا سازیم . برای مثال فرض کنید ، که کاربر بایستی در یک فیلد آدرس ایمیل وارد نماید . می خواهیم مکانیزمی طراحی کنیم تا بررسی کند ، آیا آدرس ایمیل وارد شده توسط کاربر دارای فرمت صحیح یک ایمیل است یا خیر . اگر ایمیل وارد شده ساختار صحیح نداشت ، به وی پیام هشدار می دهد .

https://succourad.com/?p=10087
پیشنهاد براساس سلیقه شما

سئوالات و نظرات ارزشمند خود را با ما مطرح کنید

دیدگاهتان را بنویسید