رفتن به مطلب

پست های پیشنهاد شده

سلام

من میخوام توی فرمی اطلاعات جند نفر رو بگیرم مثل نام، نام خانوادگی و کد ملی و شماره تماس

برای اینکار باید از فیلد لیست استفاده کنم چون تعدادشون مشخص نیست

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

کسی میدونه چطور میشه اینکار رو انجام داد؟

list-field.png

به اشتراک گذاری این ارسال


لینک به ارسال

سلام

اگر افزونه گرویتی فرم فارسی رو نصب کنی فیلد کدملی رو اضافه میکنه

یا میتونی یه فیلد عددی اضافه کنی و الگوریتم کد ملی بهش بدی ، مثلا  9999999999  برای کد ملیه

به اشتراک گذاری این ارسال


لینک به ارسال
در ۱ ساعت قبل، cherry گفته است :

سلام

اگر افزونه گرویتی فرم فارسی رو نصب کنی فیلد کدملی رو اضافه میکنه

یا میتونی یه فیلد عددی اضافه کنی و الگوریتم کد ملی بهش بدی ، مثلا  9999999999  برای کد ملیه

ممنون از همکاریتون

گرویتی فرم فارسی دارم و اون فقط فیلد کد ملی داره ولی من میخوام توی لیست الگوریتم کدملی چک بشه 

الگوریتم کدملی صرفا 10 رقم بودن ورودی نیست

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

به اشتراک گذاری این ارسال


لینک به ارسال

سلام

الگوریتم تشخیص صحت کد ملی پایین توضیح داده شده!

----------------------------------

1- برای محاسبه رقم کنترل از روی سایر ارقام ، هر رقم را در موقعیت آن ضرب کرده و حاصل را با هم جمع می کنیم.

2- مجموع بدست آمده از مرحله یک را بر 11 تقسیم می کنیم

3- اگر باقیمانده کمتر از 2 باشد ، رقم کنترل باید برابر باقیمانده باشد در غیر اینصورت رقم کنترل باید برابر یازده منهای باقیمانده باشد

مثال : آیا کد 7731689951 یک کد ملی معتبر است؟

برای این منظور کد

ساختار کد ملی
ساختار کد رقم کنترل 9 رقم سمت چپ کد ملی
ارقام کد 1 5 9 9 8 6 1 3 7 7
موقعیت 1 2 3 4 5 6 7 8 9 10
محاسبه حاصل ضرب   10 27 36 40 36 7 24 63 70

حاصل جمع ضرب ارقام 2 الی 10 را در موقعیت آنها محاسبه می کنیم

 

7*10+7*9+3*8+1*7+6*6+8*5+9*4+9*3+5*2=313

313÷11=28 و R=5

چون باقیمانده برابر 5 و بزرگتر مساوی 2 است پس باید رقم کنترل این کد برابر 6 ( یازده منهای 5 برابر 6)باشد.

با دقت در کد متوجه می شویم که رقم کنترل ورودی برابر 1 است پس کد مورد نظر به عنوان یک کد معتبر قابل قبول نیست.

----------------------------------

همچنین کد PHP و JS هم موجوده! کد PHP:

function _custom_check_national_code($code)
{
    if(!preg_match('/^[0-9]{10}$/',$code))
        return false;
    for($i=0;$i<10;$i++)
        if(preg_match('/^'.$i.'{10}$/',$code))
            return false;
    for($i=0,$sum=0;$i<9;$i++)
        $sum+=((10-$i)*intval(substr($code, $i,1)));
    $ret=$sum%11;
    $parity=intval(substr($code, 9,1));
    if(($ret<2 && $ret==$parity) || ($ret>=2 && $ret==11-$parity))
        return true;
    return false;
}

کد JS:

function checkCodeMeli(code)
{

   var L=code.length;

   if(L<8 || parseInt(code,10)==0) return false;
   code=('0000'+code).substr(L+4-10);
   if(parseInt(code.substr(3,6),10)==0) return false;
   var c=parseInt(code.substr(9,1),10);
   var s=0;
   for(var i=0;i<9;i++)
      s+=parseInt(code.substr(i,1),10)*(10-i);
   s=s%11;
   return (s<2 && c==s) || (s>=2 && c==(11-s));
   return true;
}

موفق باشید :)

به اشتراک گذاری این ارسال


لینک به ارسال
در 8 دقیقه قبل، samirhm گفته است :

الگوریتم تشخیص صحت کد ملی پایین توضیح داده شده!

 

سلام

ممنون از راهنماییتون

ولی من با کد الگوریتم مشکلی ندارم بحث من اعمال این کد برای یک ستون از فیلدی از نوع لیست توی گرویتی فرم هست

به اشتراک گذاری این ارسال


لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


  • مطالب مشابه

    • توسط ::AmiR::
      با سلام
      وقت عزیزان بخیر
      ببخشید یه سوال داشتم
      من قصد دارم در بخشی از سایت وردپرسی خودم این امکان رو به کاربران سایتم بدم که بیان مثلا کارزار ایجاد کنند و وقتی من تایید کردم اون کارزار منتشر بشه و اونها بتونن با استفاده از لینک اون صفحه به جمع آوری امضا بپردازند.مثل سایت کارزار
      خوب برای این بخش من قصد دارم از افزونه گرویتی استفاده کنم.این افزونه رو نصب کردم و خداروشکر در آزمایشی که کردم اون چیزی که من میخوام رو داره
      سوال اصلی من اینه که من چطور میتونم این قابلیت رو ایجاد کنم که مثلا افرادی که به اون کمپین پیوستند و یا امضا کردن رو زیر اون فرم لیست کنم؟ مثل این صفحه
      ممنون میشم در این زمینه راهنماییم کنید
    • توسط iranh00
      با سلام 
       
       
      من یک افزونه دارم، میخوام ببینم کسی میتونه آموزش بده نال بشه، یا در قبال دریافت هزینه خودش نال کنه ؟
       
    • توسط pese
      سلام
      با افزونه کیوفرم quform در سایتم فرم زدم اطلاعات توسط کارفرمایان و کارجویان در سایتم توسط فرم ثبت می شود.
      حالا من پایگاه داده ام رکوردهاش خیلی زیاد شده برای پیدا کردن کارفرما باید فرمی درست کنم تا از طریق کد ملی و یا نام و یا تلفن بتوانم به مشخصات کامل آن کارفرما سریع دسترسی داشته باشم.
      افزونه کیو فرم آیا فقط اطلاعات را فقط ارسال می کنه به دیتابیس من ؟؟؟؟ آیا نمی شه فرمی را با همان نوشت که بتوانم اطلاعاتی را از پایگاه داده استخراج کنم اگر می شه لطفا راهنمایی کنید .
      عکس و توضیحات کامل باشه
    • توسط iranh00
      با سلام
      من روی سایتم برای سیستم تیکتینگ و پشتیبانی از افزونه Awesome Support استفاده میکنم
      میخوام یه جور CRM سفارشی سازی کنم که کاربر، دستگاه رو انتخاب کنه ( این شامل خرید محصولات و قطعات داخل سایت میشه که از طریق فروشگاه ووکامرس ارائه میشه ) بعد اگه مشکلی داشت، کاربر بتونه حالت تیکتینگ پیگیری کنه .
      و خیلی مهم هست، که هم کاربر مشتری، هم کاربر پشتیبان بتونه فرم رو پرینت بگیره .
      نهایتاً افزونه Gravity Forms Bridge ، میتونه این ارتباط رو برقرار کنه، اما من نتونستم سایت فارسی زبانی پیدا کنم که این افزونه رو ارائه بدن، علیرغم کاربرد فوق العاده بالای این افزونه
      با توجه به پیگیری ها و بررسی هایی که کردم این افزونک خیلی کاربردی خواهد بود .
      از مهمترین و بارزترین ویژگی هاش بعد از اتصال به گراویتی فرم :
      – طراحی فرم پشتیبانی برای خروجی چاپ یا PDF (در سامانه های ارتباط با مشتریان یا همون CRM ، معمولاً واحد پشتیبانی، نیاز داره از طول دوره پشتیبانی گزارش رو چاپ برای بخش اداری بایگانی کنه، و بعد از اون برای مشتری فاکتور صادر بشه )
      – مورد دوم، سفارشی سازی فیلدها هست، که بر اساس ارتباطی که ایجاد میشه و شرایط کارهای خاصی انجام بشه . (مثل رابطه فیلد شهر با استان، هر وقت یک استان انتخاب بشه، فقط شهر های مربوط به همون استان نمایش داده بشه )
      این فقط دو مورد بارز این افزونه بود .
      خواستم ببینم شما راهکاری میتونید ارائه بدید ؟
      و به عنوان پرسش پایانی، چنانچه من قصد خرید این افزونه رو داشته باشم،  لینک سایت مبنع رو شما میتونید خریداری کنید ؟
      https://getawesomesupport.com/addons/gravity-forms/ و حدود قیمت تمام شده من چقدر خواهد بود ؟
      و با توجه به توضیحی که داخل سایت منبع درج شده، باید این افزونه سالانه تمدید بشه ؟
      و یا اگه خودم خریداری کنم، شما میتونید این افزونه رو نال کنید برای من ؟
      با تشکر فراوان
       
    • توسط omid1374
      سلام . ببخشید من میخواستم بدونم میشه با Gravity Forms  درخواست post ارسال کرد .
      در واقعه قصد دارم اطلاعات یک فرم رو بعد از ارسال توسط کاربر به API به سایت ارسال کنم .
×
×
  • اضافه کردن...