freepay, Freepay, freepay.ir, فری پی, درگاه پرداخت
تبلیغات
فال, فال های وتار, فال وتار, faal, fal, wtaar, faal wtaar


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

مثال:

مثل همیشه پیش از انجام هر کاری، نرم‌افزار زمپ را اجرا و دو سرور آپاچی و مای‌اس‌کیو‌ال را در حال فعال قرار دهید. سپس در پوشه‌ی htdocs یک پوشه‌ی جدید به نام codei-form ایجاد کنید. همانند آنچه در جلسات اولیه‌ی این سری آموزش گفته بودیم، فریم‌ورک را در این پوشه نصب و پیکربندی کنید.

در مسیر application/views یک فایل جدید به نام myform.php بسازید. این صفحه فایل ویو فرم مورد نظر ما است که قصد داریم آن را به کاربر نمایش دهیم. در این فرم کاربر باید نام خود را وارد کند ولی پیش از ثبت، می‌خواهیم اطمینان حاصل کنیم که وی فرم را خالی نگذاشته باشد و به عبارت دیگر می‌خواهیم یک اعتبارسنجی ساده روی این فرم انجام دهیم. کد زیر را در فایل ایجاد شده قرار دهید.

<html>

   <head> 
      <title>My Form</title> 
   </head>

   <body>
      <form action = "" method = "">
         <?php echo validation_errors(); ?>  
         <?php echo form_open('form'); ?>  
         <h5>Name</h5> 
         <input type = "text" name = "name" value = "" size = "50" />  
         <div><input type = "submit" value = "Submit" /></div>  
      </form>  
   </body>

</html>

حال باید یک فایل نمای دیگر نیز ایجاد کنید. در مسیر application/views یک فایل جدید به نام formsuccess.php ساخته و سپس کد زیر را در آن قرار دهید. این صفحه قرار است پس از موفقیت‌آمیز بودن ثبت فرم به کاربر نمایش داده شود.

<html>

   <head> 
      <title>My Form</title>
   </head> 

   <body>  
      <h3>Your form was successfully submitted!</h3>  
      <p><?php echo anchor('form', 'Try it again!'); ?></p>  
   </body>

</html>

یک کنترلر جدید به نام Form.php در مسیر application/controller ایجاد کرده و سپس کد زیر را در آن قرار دهید. در این کنترلر به منظور انجام عملیات اعتبار سنجی و نمایش خطاهای احتمالی به کاربر مورد استفاده قرار می‌گیرد. همچنین در صورت صحیح بودن ورودی، صفحه‌ی formsuccess.php را به کاربر نمایش خواهد داد.

<?php

   class Form extends CI_Controller { 

      public function index() { 
         /* Load form helper */ 
         $this->load->helper(array('form'));

         /* Load form validation library */ 
         $this->load->library('form_validation');

         /* Set validation rule for name field in the form */ 
         $this->form_validation->set_rules('name', 'Name', 'required'); 

         if ($this->form_validation->run() == FALSE) { 
         $this->load->view('myform'); 
         } 
         else { 
            $this->load->view('formsuccess'); 
         } 
      }
   }
?>

در توضیح کد بالا، همانطور که می‌بینید ابتدا در تابع ()index یک هلپر به نام form را لود کرده‌ایم. 

/* Load form helper */ 
$this->load->helper(array('form'));

سپس کتابخانه‌ی مربوط به اعتبارسنجی فرم‌ها را نیز با استفاده از قطعه کد زیر بارگذاری کرده‌ایم:

$this->load->library('form_validation');

سپس با استفاده از کد زیر:

$this->form_validation->set_rules('name', 'Name', 'required'); 

عملیات اعتبارسنجی را روی فیلد name در فرم یاد شده انجام می‌دهیم. با استفاده از متد set_rules از کتابخانه‌ی form_validation می‌توان قوانین مورد نظر برای اعتبارسنجی هر فیلد را تعیین کرد. از آنجا که هدف ما این بوده که فیلد نام حتما و به صورت اجباری توسط کاربر وارد شود، پس با استفاده از متد یاد شده نوع این فیلد را اجباری تعیین کرده‌ایم.

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

if ($this->form_validation->run() == FALSE) { 
         $this->load->view('myform'); 
         } 
         else { 
            $this->load->view('formsuccess'); 
         } 

حال باید تغییراتی در فایل routes.php ایجاد کنید. بدین منظور این فایل که در مسیر application/config/routes.php قرار دارد را باز کرده و سپس خط زیر را به انتهای کدهای موجود در آن اضافه کنید.

$route['validation'] = 'Form';

اگر همه‌ی مراحل را به درستی انجام داده باشید، با مراجعه به آدرس زیر می‌توانید نتیجه کار را مشاهده کنید.

http://127.0.0.1/codei-form/index.php/validation

با اجرای آدرس فوق در مرورگر خود، با صفحه‌ای مثل زیر مواجه خواهید شد.

اعتبارسنجی فرم در codeigniter

همانطور که در بالا اشاره کردیم، برای این فرم که شامل فیلدی به نام Name است خاصیت ضروری بودن را پر کرده‌ایم. بدین ترتیب پیش از ثبت شدن اطلاعات فرم به صفحه‌ی مقصد، از خالی نبودن آن اطمینان حاصل کرده‌ایم. حال برای تست پروژه بدون وارد کردن هیچ متن خاصی در فیلد نام، روی دکمه‌ی submit کلیک کنید. در این شرایط با خطا مواجه خواهید شد و پیامی مناسب به شما نمایش داده می‌شود که اعلام می‌‌کند باید حتما فیلد یاد شده را پر کنید. علاوه بر این فرم ما مجددا به کاربر نمایش داده خواهد شد. در این حالت با صفحه‌ای مثل زیر مواجه خواهید شد.

اعتبارسنجی فرم در codeigniter

در صورتی که فیلد نام را در فرم بالا به درستی وارد کرده باشید، اعتبارسنجی ما نیز با موفقیت انجام خواهد شد و در نتیجه صفحه‌ی مورد نظر ما به کاربر نمایش داده خواهد شد که در این پروژه چیزی شبیه به زیر خواهد بود.

اعتبارسنجی فرم در codeigniter

در مثال بالا، ما فقط یک قانون برای فیلد مورد نظرمان تعیین کرده‌ایم که آن هم ضروری بودن پر کردن فیلد یاد شده بود. اما کتابخانه‌ی اعتبارسنجی فرم در فریم‌ورک Codeigniter شامل قوانین مختلفی است که می‌توانید از آن‌ها نیز به منظور اعتبارسنجی فرم خود بهره ببرید. در ادامه لیستی از قوانینی که می‌توانید برای اعتبارسنجی فرم‌های خود از آن‌ها استفاده کنید را آورده‌ایم.

لیست قوانین اعتبارسنجی فرم‌ها در فریم‌ورک Codeigniter

قانون پارامتر توضیح مثال

required

No اگر فیلد مورد نظر خالی باشد، مقدار False را بر می‌گرداند.

matches

Yes

اگر مقدار وارد شده در فیلد مورد نظر با مقدار تعیین شده توسط ما یکسان نباشد، مقدار False را بر می‌گرداند.

matches[form_item]

regex_match

Yes

اگر مقدار وارد شده در فیلد مورد نظر از عبارت منظم تعیین شده توسط ما پیروی نکرده باشد، مقدار False را بر می‌گرداند. 

regex_match[/regex/]

differs

Yes

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

differs[form_item]

is_unique

Yes

اگر مقدار وارد شده در فیلد مورد نظر از فرم ما در فیلد تعیین شده از جدول مورد نظر ما منحصر به فرد نباشد، مقدار False را بر می‌گرداند. نکته: برای استفاده از این قانون Query Bulder باید در حالت فعال قرار داشته باشد.

is_unique[table.field]

min_length

Yes

اگر تعداد کاراکترهای وارد شده در فیلد مورد نظر کمتر از مقدار تعیین شده توسط ما باشد، مقدار False را بر می‌گرداند.

min_length[3]

max_length

Yes

اگر تعداد کاراکترهای وارد شده در فیلد مورد نظر بیشتر از مقدار تعیین شده توسط ما باشد، مقدار False را بر می‌گرداند.

max_length[12]

exact_length

Yes

اگر تعداد کاراکترهای وارد شده در فیلد مورد نظر با تعداد کاراکترهای تعیین شده توسط ما دقیقا برابر نباشد، مقدار False را بر می‌گرداند.

exact_length[8]

greater_than

Yes

اگر مقدار وارد شده در فیلد مورد نظر، کمتر یا برابر با مقدار تعیین شده توسط ما باشد یا از نوع عددی نباشد، مقدار False را بر می‌گرداند.

greater_than[8]

greater_than_equal_to

Yes

اگر مقدار وارد شده در فیلد مورد نظر، کمتر از مقدار تعیین شده توسط ما باشد یا از نوع عددی نباشد، مقدار False را بر می‌گرداند.

greater_than_equal_to[8]

less_than

Yes

اگر مقدار وارد شده در فیلد مورد نظر، بیشتر یا برابر با مقدار تعیین شده توسط ما باشد یا از نوع عددی نباشد، مقدار False را بر می‌گرداند.

less_than[8]

less_than_equal_to

Yes

اگر مقدار وارد شده در فیلد مورد نظر، بیشتر از مقدار تعیین شده توسط ما باشد یا از نوع عددی نباشد، مقدار False را بر می‌گرداند.

less_than_equal_to[8]

in_list

Yes

اگر مقدار وارد شده در فیلد مورد نظر برابر با یکی از آیتم‌های لیست از پیش‌تعیین‌ شده‌ی ما نباشد، مقدار False را بر می‌گرداند.

in_list[red,blue,green]

alpha

No

اگر مقدار وارد شده در فیلد مورد نظر ما شامل کاراکترهایی به غیر از حروف الفبای انگلیسی باشد مقدار False را بر می‌گرداند.

alpha_numeric

No

اگر مقدار وارد شده در فیلد مورد نظر ما شامل کاراکترهایی به غیر از حروف الفبای انگلیسی و نیز اعداد باشد مقدار False را بر می‌گرداند.

alpha_numeric_spaces

No

اگر مقدار وارد شده در فیلد مورد نظر ما شامل کاراکترهایی به غیر از حروف الفبای انگلیسی و نیز اعداد و همچنین کاراکتر فاصله باشد مقدار False را بر می‌گرداند.

از این قانون باید پس از trim کردن فیلدها استفاده کنیم تا فاصله‌های ابتدا و انتهای مقادیر وارد شده در فیلدها به عنوان بخشی از آن محسوب نشوند.

alpha_dash

No

اگر مقدار وارد شده در فیلد مورد نظر ما شامل کاراکترهایی به غیر از حروف الفبای انگلیسی، اعداد، کاراکتر آندراسکور و خط فاصله باشد مقدار False را بر می‌گرداند.

numeric

No

اگر مقدار وارد شده در فیلد مورد نظر ما شامل کاراکترهایی به غیر از اعداد باشد مقدار False را بر می‌گرداند.

integer

No

اگر مقدار وارد شده در فیلد مورد نظر ما هر چیزی به غیر از اعداد صحیح باشد مقدار False را بر می‌گرداند.

decimal

No

اگر مقدار وارد شده در فیلد مورد نظر ما هر چیزی به غیر از اعداد اعشاری باشد مقدار False را بر می‌گرداند.

is_natural

No

اگر مقدار وارد شده در فیلد مورد نظر ما هر چیزی به غیر از اعداد طبیعی باشد مقدار False را بر می‌گرداند. مثال ۱- و ۰ و ۱ و ...

is_natural_no_zero

No

اگر مقدار وارد شده در فیلد مورد نظر ما هر چیزی به غیر از اعداد طبیعی یا صفر باشد مقدار False را بر می‌گرداند. مثال ۱- و ۱ و ۲ و ...

valid_url

No

اگر مقدار وارد شده در فیلد مورد نظر یک آدرس معتبر URL نباشد، مقدار False را بر می‌گرداند.

valid_email

No

اگر مقدار وارد شده در فیلد مورد نظر یک آدرس معتبر ایمیل نباشد، مقدار False را بر می‌گرداند.

valid_emails

No

اگر مقدار وارد شده در فیلد مورد نظر آدرس معتبر ایمیل‌هایی که با کامای انگلیسی از یکدیگر جدا شده‌اند نباشد، مقدار False را بر می‌گرداند.

valid_ip

No

اگر مقدار وارد شده در فیلد مورد نظر یک آدرس معتبر IP نباشد مقدار False را بر می‌گرداند. این قانون می‌تواند یک آرگومان اختیاری نیز دریافت کند که با استفاده از آن می‌توان نوع آی‌پی را ipv4 یا ipv6 تعیین کرد.

valid_base64

No

اگر رشته‌ی متنی وارد شده در فیلد مورد نظر ما هر چیزی به غیر از کاراکترهای مجاز base64 باشد، مقدار False را بر می‌گرداند.

اگر سوال یا نظری در مورد مباحث مطرح شده در این جلسه دارید، از طریق بخش دیدگاه‌ها آن را با زومیت و سایر کاربران به اشتراک بگذارید.

منبع : Zoomit ارسال به :
انتشار : دوشنبه ۱۹ مهر ۱۳۹۵ - ۱۶:۱۹:۰ دیده شده : ۷۵بار نویسنده : admin

آموزش Codeigniter آموزش Codeigniter از پایه آموزش Codeigniter فارسی آموزش تصویری Codeigniter دانلود آموزش Codeigniter کتاب آموزش Codeigniter آموزش کامل Codeigniter فیلم آموزش Codeigniter آموزش نصب Codeigniter آموزش فریم ورک Codeigniter دانلود آموزش تصویری Codeigniter دانلود فیلم آموزش Codeigniter دانلود کتاب آموزش Codeigniter دانلود فیلم آموزشی Codeigniter دانلود فیلم آموزش Php Codeigniter Framework کتاب آموزشی Codeigniter کتاب آموزش فریم ورک Codeigniter آموزش فارسی بسیار کامل Codeigniter آموزش کامل فریم ورک Codeigniter فیلم آموزشی Codeigniter فیلم آموزش فریم ورک Codeigniter جلسه اول خواستگاری جلسه اول خواستگاری چه باید گفت جلسه اول خواستگاری چه بگوییم؟ جلسه اول خواستگاری دهنوی جلسه اول خواستگاری چه بپرسیم جلسه اول خواستگاری دکتر فرهنگ جلسه اول خواستگاری چی بگم جلسه اول خواستگاری چی بپرسیم جلسه اول خواستگاری سوالات جلسه اول خواستگاري جلسه خواستگاری جلسه خواستگاری رسمی جلسه خواستگاری دکتر فرهنگ جلسه خواستگاری + سوالات جلسه خواستگاری موفق جلسه خواستگاری+سوال جلسات خواستگاری جلسه خواستگاري جلسات خواستگاری دکتر فرهنگ خواستگاری جلسه اول جلسه دوم خواستگاری جلسه دوم خواستگاری چه بگوییم؟ جلسه دوم خواستگاری دهنوی جلسه دوم خواستگاری چی ببریم جلسه دوم خواستگاري جلسه سوم خواستگاری جلسه سوم خواستگاری دهنوی سوالات جلسه دوم خواستگاری سوالات جلسه دوم خواستگاری دهنوی سوالات جلسه دوم خواستگاری دکتر فرهنگ جلسه هیات دولت جلسه هیات دولت امروز جلسه هيات دولت جلسه هيات دولت امروز جلسه هیات دولت روز چهارشنبه جلسه هیات دولت دیروز جلسه هیات دولت روحانی جلسه هیات دولت یازدهم جدیدترین جلسه هیات دولت جلسه هيئت دولت امروز جلسة وناسه جلسة وناسه 2016 جلسه وناسه راشد جلسه وناسه حاتم العراقي وقصي جلسه وناسه حلا الترك ومشاعل جلسة وناسه طني ورور جلسة وناسه راشد الماجد جلسة وناسه حلا الترك جلسة وناسه رابح صقر جلسة وناسه جميله طني ورور جلسه امروز مجلس جلسه امروز مجلس دهم جلسه امروز مجلس شوراي اسلامي جلسه امروز مجلس برای رای اعتماد جلسه امروز مجلس خبرگان جلسه امروز مجلس عراق جلسه امروز مجلس مطهری جلسات امروز مجلس جلسه علنی امروز مجلس جلسه علنی امروز مجلس شورای اسلامی جلسه هیئت دولت جلسه هیئت دولت امروز جلسه هیئت دولت روز یکشنبه جلسه هیئت دولت دیروز جلسه هیئت دولت در مشهد جلسه هیئت دولت یکشنبه جلسه هیئت دولت در امروز جلسه هیئت دولت یازدهم جلسه هیئت دولت روحانی در جلسه اول خواستگاری چه بگوییم در جلسه دوم خواستگاری چه بگوییم در جلسه اول خواستگاری چه بگویم جلسه اول خواستگاری چه بگویم جلسة عود جلسة عود يمني جلسة عود اعوفك جلسة عود طرب جلسة عود يمنيه جلسة عود خالد عبدالرحمن جلسه عود حزينه جلسه عود خاصه جلسه عود مسكين يا قلبي جلسة عود نجران جلسه اول آشنایی جلسه اول آشنایی با دختر جلسه اول آشنایی برای ازدواج جلسه اول آشنایی دختر و پسر جلسه اول آشنایی چه بگوییم؟ جلسه اول آشنایی خواستگاری جلسه اول آشنایی ازدواج جلسه اول آشنایی خانواده ها جلسه اول آشنايي جلسه اول آشنايي+ازدواج فرم های تکواندو فرم های تکواندو (تصویری) فرم های تکواندو Pdf فرم های تکواندو دانلود فرم های تکواندو پومسه فرم های تکواندو با تصویر فرم های تکواندو فیلم فرم های تکواندو عکس فرم هاي تكواندو اسامی فرم های تکواندو فرم های انبارداری فرم های انبارداری Pdf فرم هاي انبارداري نمونه فرم های انبارداری دانلود فرم های انبارداری فرم های مورد نیاز انبارداری فرم های مربوط به انبارداری انواع فرم های انبارداری فرم های خام انبارداری فرم های سیستم انبارداری فرم های اداری فرم های اداری شرکت فرم های اداری آموزش و پرورش فرم های اداری ایزو فرم های اداری مدارس فرم های اداری و مالی فرم های اداری شرکت ها فرم های اداری مدارس ابتدایی فرم های اداری مالی فرم های اداری شرکتهای خصوصی فرم های حسابداری فرم های حسابداری در اکسل فرم های حسابداری صنعتی فرم های حسابداری اکسل فرم های حسابداری مالی فرم های حسابداری پیمانکاری فرم های حسابداری انبار فرم های حسابداری در شهرداری فرم های حسابداری شرکت فرم هاي حسابداري فرم های ثبت نام یارانه فرم های ثبت نام یارانه نقدی فرم های ثبت نام یارانه ها فرم های ثبت نام یارانه 93 فرم های ثبت نام یارانه نقدی 93 فرم های ثبت نام یارانه سال 93 فرم های ثبت نام یارانه جدید فرم های ثبت نام یارانه مرحله دوم فرم های ثبت نام یارانه 1393 فرم هاي ثبت نام يارانه نقدي فرم های یارانه فرم های یارانه نقدی فرم های یارانه مرحله دوم فرم های یارانه سال 93 فرم های یارانه ثبت نام فرم های یارانه 93 فرم های یارانه ها فرم های یارانه نقدی 93 فرم های یارانه ای فرم هاي يارانه فرم های خوداظهاری یارانه فرم های خود اظهاری یارانه نقدی دانلود فرم های خوداظهاری یارانه نمونه فرم های خوداظهاری یارانه شکل فرم های خوداظهاری یارانه فرم های خوداظهاری مرحله دوم هدفمندی یارانه ها توزیع فرم های خوداظهاری دریافت یارانه نقدی فرم های قضایی فرم های قضایی دادگستری فرم های قضایی کیفری فرم هاي قضايي نمونه فرم های قضایی دانلود فرم های قضایی فرم های حقوقی و قضایی دانلود نمونه فرم های قضایی دانلود رایگان فرم های قضایی نمونه فرم های خام قضایی فرم های ثبت شرکت فرم های ثبت شرکت تعاونی فرم های ثبت شرکت مسئولیت محدود فرم های ثبت شرکت های دانش بنیان فرم های ثبت شرکت تضامنی فرم هاي ثبت شركت دانلود فرم های ثبت شرکت سهامی خاص دانلود فرم های ثبت شرکت با مسئولیت محدود فرم های اداره ثبت شرکتها دانلود فرم های ثبت شرکت فرم های مالیاتی فرم های مالیاتی کانادا فرم های مالیاتی کبک فرم هاي مالياتي فرم های مالیات فرم های اظهارنامه مالیاتی دانلود فرم های مالیاتی فرم های سازمان امور مالیاتی کشور فرم های مالیات بر ارث فرم های اعتراض مالیاتی جلسه وناسه جلسه عود آموزش Codeigniter - جلسه یازدهم: اعتبارسنجی فرم ها

دیدگاه شما در مورد این مطلب پس از تایید نویسنده سایت نمایش داده خواهد شد
آخرین مطالب
تبلیغات
آمار وتار
  • تعداد مطالب : ۱۲۰۷۸۲
  • تعداد نظرات : ۲۹۹
  • تعداد حاضران : ۱۹۷
  • آخرین بروزرسانی : ۱۱ ثانيه قبل
تبلیغات
برچسب ها
تبلیغات
آخرین جستجوها