زمان کنونی: ۹-۲-۱۴۰۳, ۱۱:۴۱ عصر درود مهمان گرامی! (ورودثبت نام)


ارسال پاسخ 
 
امتیاز موضوع:
  • 4 رأی - میانگین امتیازات: 4
  • 1
  • 2
  • 3
  • 4
  • 5
کامپوننت فرم ساز BreezingForms-172
۱۱-۷-۱۳۹۰, ۱۰:۵۴ عصر
ارسال: #157
RE: کامپوننت فرم ساز BreezingForms-172
این مطلب رو در چند سایت مختلف دیدم، اما هیچ کدام منبع یکسانی رو معرفی نکردند البته گفته شده که سازمان ثبت احوال کشور این فرمول رو ارائه داده. و اما اصل مطلب:

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

سازمان ثبت احوال کشور در راستای ارائه کارت ملی روشی را برای تولید کدهای ملی استفاده نموده است که با استفاده از آنها می توانیم کدهایی داشته باشیم که از امنیت بالایی برخوردار باشند و همچنین قابلیت تقلب نداشته باشند.

همه کدهای ملی ۱۰ رقمی هستند.

کدهای ملی که همه ارقام آنها مثل هم باشند معتبر نیستند مثل:

۰۰۰۰۰۰۰۰۰۰
۱۱۱۱۱۱۱۱۱۱
۲۲۲۲۲۲۲۲۲۲
۳۳۳۳۳۳۳۳۳۳
۴۴۴۴۴۴۴۴۴۴
۵۵۵۵۵۵۵۵۵۵
۶۶۶۶۶۶۶۶۶۶
۷۷۷۷۷۷۷۷۷۷
۸۸۸۸۸۸۸۸۸۸
۹۹۹۹۹۹۹۹۹۹

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

دهمین رقم شماره ملی را ( از سمت چپ ) به عنوان A در نظر می گیریم.

یک مقدار B در نظر می گیریم و آن را برابر با =

(اولین رقم * ۱۰) + ( دومین رقم * ۹ ) + ( سومین رقم * ۸ ) + ( چهارمین رقم * ۷ ) + ( پنجمین رقم * ۶) + ( ششمین رقم * ۵ ) + ( هفتمین رقم * ۴ ) + ( هشتمین رقم * ۳ ) + ( نهمین رقم * ۲ )

قرار می دهیم.


مقدار C را برابر با = B – (B/11)*11 قرار می دهیم.


اگر مقدار C برابر با صفر باشد و مقدار A برابر C باشد کد ملی صحیح است.

اگر مقدار C برابر با ۱ باشد و مقدار A برابر با ۱ باشد کد ملی صحیح است.

اگر مقدار C بزرگتر از ۱ باشد و مقدار A برابر با ۱۱ – C باشد کد ملی صحیح است.


یک نمونه کد جاوا اسکریپت جهت چک کردن کد ملی :

[align=left]function checkMelliCode(varmellicode)
{
var 
meli_code;
meli_code=varmellicode.value;
if (
meli_code.length == 10)
{
if(
meli_code==’1111111111′ ||
meli_code==’0000000000′ ||
meli_code==’2222222222′ ||
meli_code==’3333333333′ ||
meli_code==’4444444444′ ||
meli_code==’5555555555′ ||
meli_code==’6666666666′ ||
meli_code==’7777777777′ ||
meli_code==’8888888888′ ||
meli_code==’9999999999′ )
{
alert(”کد ملی صحیح نمی باشد”);
objcode.focus();
return 
false;
}
parseInt(meli_code.charAt(9));
parseInt(meli_code.charAt(0))*10 +
parseInt(meli_code.charAt(1))*+
parseInt(meli_code.charAt(2))*+
parseInt(meli_code.charAt(3))*+
parseInt(meli_code.charAt(4))*+
parseInt(meli_code.charAt(5))*+
parseInt(meli_code.charAt(6))*+
parseInt(meli_code.charAt(7))*+
parseInt(meli_code.charAt(8))*2;
parseInt(n/11)*11;
if ((
== && == c) || (== && == 1) || (&& == 11 r))
{
return 
true;
}
else
{
alert(”کد ملی صحیح نمی باشد”);
objcode.focus();
return 
true;
}
}
else
{
return 
true;
} [/
align

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

همان طور كه مي دانيد كد ملي از 10 رقم تشكيل شده كه سه رقم اول مربوط به كد شهرستان 6 رقم دوم يه عدد منحصر به فرد هست و رقم آخر هم براي تاييد صحت كد ملي مورد استفاده قرار مي گيره حالا من مي خوام كد شهرستان هاي مختلف رو در يك ليست جمع آوري كنم

توجه كنيد در تهران همه متولدين سال 68 اولشون 001 هست بلااستثنا یا اصفهان 67 68 ها همگی 127 می باشند
پس اين يه ربطيم به سال تولد بايد داشته باشه


شيراز=229،230
تهران=001،004،006،007،008
آمل=214
نور=625
جهرم= 246
تبريز =138
هشترود ميانه مراغه =136
زاهدان= 611
127 اصفهان
128 اطراف اصفهان
چادگان-اصفهان 575
تیران وکرون-اصفهان 549
نجف آباد-اصفهان 109
رشت 258
قزوین، 432
175 اهواز
مشهد=092
ساری=208
فیروز کوه=043
236 برا کازرون

حالا میخوام بدونم چطور میشه اینو توی این فرمساز استفاده کرد!
اگه دوستان متخصص راهنمایی کنند واقعا کمک بزرگی به مبحث ثبت نام کردید.
ممنون


فایل‌(های) پیوست شده
Validate-national-Iranian-Melli-codes.tar.gz
نوع فایل .gz
دفعات دانلود 9
اندازه 36.38 کیلوبایت

امضاء shafiee
-----------------------------
« چه زیباست هنگامی که در اوج نشاط و بی نیازی هستی دست به دعا برداری »
« جبران خلیل جبران »

------------------------------
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
 سپاس شده توسط وحید سیدی ، شاهین سمیع عادل
ارسال پاسخ 


پیام‌های داخل این موضوع
کامپوننت فرم ساز BreezingForms-172 - Reza Ganji - ۴-۱۰-۱۳۸۹, ۰۸:۳۶ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - ati68 - ۳۰-۱۰-۱۳۸۹, ۰۷:۳۸ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - Sir_Amin - ۳۰-۱۰-۱۳۸۹, ۰۷:۴۸ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - ati68 - ۳۰-۱۰-۱۳۸۹, ۰۸:۱۱ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - Sir_Amin - ۳۰-۱۰-۱۳۸۹, ۰۹:۵۹ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - navid64 - ۲۴-۱-۱۳۹۰, ۱۰:۵۰ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - madadii - ۱۲-۲-۱۳۹۰, ۰۴:۴۰ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - BSE2 - ۲۴-۱-۱۳۹۰, ۰۶:۳۴ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - mesc - ۶-۲-۱۳۹۰, ۰۹:۵۲ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - mesc - ۷-۲-۱۳۹۰, ۱۱:۳۷ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - mesc - ۱۰-۲-۱۳۹۰, ۱۰:۰۵ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - Niki69 - ۲۷-۲-۱۳۹۰, ۱۰:۰۹ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - Niki69 - ۲۷-۲-۱۳۹۰, ۰۵:۵۵ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - hamed_ah - ۲۷-۲-۱۳۹۰, ۰۷:۳۴ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - Niki69 - ۲۸-۲-۱۳۹۰, ۰۶:۱۸ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - hamed_ah - ۲۸-۲-۱۳۹۰, ۰۷:۴۰ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - hamed_ah - ۲۹-۲-۱۳۹۰, ۰۵:۳۴ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - n4n4zi - ۱۶-۳-۱۳۹۰, ۰۹:۱۴ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - hamed_ah - ۳۰-۳-۱۳۹۰, ۰۶:۰۹ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - hamed_ah - ۳۱-۳-۱۳۹۰, ۰۱:۱۷ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۱۲-۴-۱۳۹۰, ۱۰:۵۷ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - m.ee - ۲۳-۴-۱۳۹۰, ۰۸:۲۳ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - m.ee - ۲۶-۴-۱۳۹۰, ۰۵:۵۹ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - hamed_ah - ۳۰-۴-۱۳۹۰, ۰۶:۴۷ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - m.ee - ۳۰-۴-۱۳۹۰, ۱۰:۳۲ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - m.ee - ۳۱-۴-۱۳۹۰, ۰۶:۵۶ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - m.ee - ۱-۵-۱۳۹۰, ۰۱:۲۶ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۲۱-۵-۱۳۹۰, ۰۷:۴۷ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۲۱-۵-۱۳۹۰, ۰۹:۰۱ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۲۳-۵-۱۳۹۰, ۰۵:۳۷ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۲۹-۵-۱۳۹۰, ۰۹:۳۳ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۲۹-۵-۱۳۹۰, ۰۵:۳۹ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - bety - ۴-۶-۱۳۹۰, ۰۹:۱۸ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - bety - ۴-۶-۱۳۹۰, ۱۱:۲۰ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - bety - ۵-۶-۱۳۹۰, ۰۱:۵۶ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - bety - ۵-۶-۱۳۹۰, ۰۴:۵۴ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - n4n4zi - ۱۰-۶-۱۳۹۰, ۰۷:۳۴ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - farjadp - ۱۰-۶-۱۳۹۰, ۰۸:۵۵ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - yalda66 - ۱۲-۶-۱۳۹۰, ۰۷:۵۱ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - gitare - ۱۵-۶-۱۳۹۰, ۰۲:۲۱ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - ati68 - ۱۵-۶-۱۳۹۰, ۱۰:۳۳ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - ati68 - ۱۶-۶-۱۳۹۰, ۰۴:۰۴ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - ebrahimt - ۲۲-۶-۱۳۹۰, ۰۳:۱۷ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - ebrahimt - ۲۳-۶-۱۳۹۰, ۱۲:۰۲ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - shafiee - ۱۰-۷-۱۳۹۰, ۰۹:۵۸ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - shafiee - ۱۱-۷-۱۳۹۰, ۰۹:۲۱ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - shafiee - ۱۱-۷-۱۳۹۰ ۱۰:۵۴ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - shafiee - ۱۲-۷-۱۳۹۰, ۰۱:۱۵ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - shafiee - ۱۳-۷-۱۳۹۰, ۰۸:۵۸ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - shafiee - ۱۲-۸-۱۳۹۰, ۰۹:۰۲ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - salar14 - ۱۹-۸-۱۳۹۰, ۰۲:۴۰ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - kabook - ۲۵-۸-۱۳۹۰, ۱۰:۲۱ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - moas - ۱۷-۱۱-۱۳۹۰, ۰۹:۳۰ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - navid2630 - ۱۸-۱۱-۱۳۹۰, ۰۹:۵۷ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - navid2630 - ۱۹-۱۱-۱۳۹۰, ۰۹:۲۸ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - anzal - ۲۶-۱۲-۱۳۹۰, ۰۶:۰۲ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - ehsansabet - ۲۶-۱۲-۱۳۹۰, ۰۷:۱۸ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - anzal - ۲۸-۱۲-۱۳۹۰, ۰۷:۱۵ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - ehsansabet - ۲۸-۱۲-۱۳۹۰, ۰۷:۵۰ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - kami190 - ۲۳-۱-۱۳۹۱, ۰۷:۲۷ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - kami190 - ۲۳-۱-۱۳۹۱, ۰۸:۰۳ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - kami190 - ۲۴-۱-۱۳۹۱, ۰۱:۱۵ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - saworld - ۱۵-۳-۱۳۹۱, ۱۰:۰۱ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - javad313 - ۲۵-۶-۱۳۹۱, ۰۷:۰۰ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - baranv60 - ۱۸-۷-۱۳۹۱, ۰۹:۰۱ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - toos - ۱۱-۸-۱۳۹۱, ۰۴:۳۹ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - toos - ۱۲-۸-۱۳۹۱, ۰۶:۲۸ عصر
کامپوننت فرم ساز BreezingForms-172 - rasooli.m - ۳-۱-۱۳۹۲, ۰۶:۱۱ عصر
کامپوننت فرم ساز BreezingForms-172 - tootferangi - ۳۰-۳-۱۳۹۲, ۰۵:۱۹ صبح
کامپوننت فرم ساز BreezingForms-172 - ehsaniman - ۱۶-۴-۱۳۹۲, ۰۸:۱۴ عصر
کامپوننت فرم ساز BreezingForms-172 - Reza Ganji - ۱۷-۴-۱۳۹۲, ۰۳:۱۷ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - kmkm912 - ۲۵-۱۱-۱۳۹۲, ۰۷:۱۳ صبح
RE: کامپوننت فرم ساز BreezingForms-172 - Reza Ganji - ۲۵-۱۱-۱۳۹۲, ۰۷:۱۰ عصر
RE: کامپوننت فرم ساز BreezingForms-172 - ared - ۲۱-۵-۱۳۹۳, ۰۱:۱۹ صبح
کامپوننت آر اس فرم حرفه ای - hassanpour - ۱۲-۵-۱۳۹۹, ۱۱:۰۴ عصر

پرش به انجمن:


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