• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
#1 - گزارش بررسی form validate های رَسپینا
#1
number :
ورودی ها منفی و مثبت و چند رقمی رو جواب میده .
(از is_numeric استفاده شده)
فقط یه trim خودکار لحاظ بشه خوبه چون وقتی یه اسپیس بزنی اول یا آخرش دیگه اون بعنوان number نمیشناسه .

یه پیشنهاد دیگه هم دارم که intNumber هم اضافه کنید
که فقط اعداد مثبت و بدون اعشار رو بگیره .

email :
عالیه .

latinchar :
درسته . فقط اجازه اسپیس هم بدید

unicodeChar :
من هر چی زدم نامعتبر شناسایی کرد !

بقیه هم که خروجی دارن .

یه htmlspecialchars هم اضافه کنید بعنوان safe_html
چند تا تابع هم پیشنهاد میکنم
کد پی‌اچ‌پی:
        /**
* bigintval
* return int value length > 10
*
* @param $str string or int > 10
* @return int/bigint
*/
    
function big_intval($str ='')
    {
        
$str preg_replace('@([^0-9])@','',$str);
        
$str ltrim($str,0);
        if(empty(
$str))
            
$str 0;
        return 
$str;
    }

    
/**
* Safe_html function
* Convert safe html code to insert to database
*
* @param $html string 
* @return string
*/
    
function safe_html($html=null)
    {
        return 
htmlspecialchars(trim($html), ENT_QUOTES);    
    }
    
/**
* str_fix function
* change arabic char to farsi and change farsi number to standard number
*
* @param $input string 
* @param $strim bool  use trim function or not!
* @return string
*/
    
function str_fix($input '',$trim=true)
    {
        
$arabic = array("ي""ك""٤""٥""٦");
        
$english = array("ی""ک""4""5""6");
        
$out str_replace($arabic,$english,$input);    
        
        
$farsi_array = array("۰""۱""۲""۳""۴""۵""۶""۷""۸""۹""٫");
        
$english_array = array("0""1""2""3""4""5""6""7""8""9"".");
        
$out str_replace($farsi_array$english_array$out);
            if(
$trim)
                
$out trim($out);
        return 
$out;
    } 

در آخر دست هموتون درد نکنه ، تا اینجاشو من حال کردم ، واقعاً شیک شده .
  پاسخ
تشکر شده توسط : undefined oia
#2
نقل قول:unicodeChar :
من هر چی زدم نامعتبر شناسایی کرد !

این یه مورد رو قبلنا(خیلی وقت پیش) خودم چک کردم و مشکلی توش ندیدم! به هر حال یه بار دیگه تستش میکنم.

نقل قول:چند تا تابع هم پیشنهاد میکنم

این توابع رو اضافه کردم. سری بعدی با چند تا کلاس دیگه میدم به یوشا بفرستتش رو گیت Wink

ممنون.
غایب
  پاسخ
تشکر شده توسط : Reza
#3
unicodeChar رو تست زدم.
مشکلی نداشت!

کد:
+ raspina/
  + application/
    + model/
    - index.php

ارایه validate داخل این کلاس رو بده.
همون validate که unicodeChar داخلش واست جواب نمیداد.
غایب
  پاسخ
تشکر شده توسط :
#4
Dodgy
هر چی فارسی میزدم جواب نمیداد .
احسان ؟!Dodgy
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان