דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. בדיקת תקינות מספר תעודת זהות באמצעות PHP

בדיקת תקינות מספר תעודת זהות באמצעות PHP

מתוזמן נעוץ נעול הועבר תכנות
11 פוסטים 5 כותבים 1.9k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • nachN מנותק
    nachN מנותק
    nach
    כתב ב נערך לאחרונה על ידי nach
    #2

    @יוס אני יכול להביא כאן את חוק האימות (שיטת הבדיקה) או קוד של זה בVB, יעזור לך? תוכל לעשות מזה בעצמך לPHP, החוק הוא אותו חוק, השאלה אם תסתדר עם זה,

    תגובה 1 תגובה אחרונה
    1
    • nachN מנותק
      nachN מנותק
      nach
      כתב ב נערך לאחרונה על ידי nach
      #3

      עשית גוגל? יש המון! הנה אחד:

      <?php
      
      // DEFINE RETURN VALUES
      define(R_ELEGAL_INPUT, -1);
      define(R_NOT_VALID, -2);
      define(R_VALID, 1);
      
      function ValidateID($str)
      {
         //Convert to string, in case numeric input
         $IDnum = strval($str);
      
         //validate correct input
         if(! ctype_digit($IDnum)) // is it all digits
            return R_ELEGAL_INPUT;
         if((strlen($IDnum)>9) || (strlen($IDnum)<5))
            return R_ELEGAL_INPUT;
      
         //If the input length less then 9 and bigger then 5 add leading 0
         while(strlen($IDnum<9)
         {
            $IDnum = '0'.$IDnum;
         }
      
         $mone = 0;
         //Validate the ID number
         for($i=0; $i<9; $i++)
         {
            $char = mb_substr($IDnum, $i, 1);
            $incNum = intval($char);
            $incNum*=($i%2)+1;
            if($incNum > 9)
               $incNum-=9;
            $mone+= $incNum;
         }
      
         if($mone%10==0)
            return R_VALID;
         else
            return R_NOT_VALID;
      }
      ?>
      

      מכאן, יש בעיות בקוד הזה (אני חסר ידע בPHP אבל לא צריך להיות גאון כדי להבין שחסר סוגר מסולסל אחרי הקטע שמוסיף 0, )אבל תוכל לערוך אותו ולבנות על הבסיס, בהצלחה!

      תגובה 1 תגובה אחרונה
      2
      • dovidD מחובר
        dovidD מחובר
        dovid ניהול
        כתב ב נערך לאחרונה על ידי
        #4

        תקינות מס' זהות מושגת ע"י ספרת הביקורת, שזה הספרה האחרונה.
        יצירת ובדיקת ספרת הביקורת נעשית ע"י אלגוריתם לוהן, ולכן אין טעם לחפש בעברית, כי יש תשובות טובות בהרבה כמחפשים באופן רחב יותר:

        php Luhn algorithm

        והתוצאות, תוצאה ראשונה

        https://gist.github.com/troelskn/1287893

        והנה טסט:

        http://sandbox.onlinephpfunctions.com/code/3740543c6dde8c11db9f24362f9552da20ded960

        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

        בכל נושא אפשר ליצור קשר dovid@tchumim.com

        תגובה 1 תגובה אחרונה
        5
        • י מנותק
          י מנותק
          יוס
          כתב ב נערך לאחרונה על ידי יוס
          #5

          מצאתי את זה

          תודה לכולם

          
          function ValidID($id) {
              if(strlen($id) == 9 && CheckDigit(substr($id, 0, 8)) == $id[8])
                  return TRUE;
          //		print = 'ok';
              else
          	//	print 'erorr';
                  return FALSE;
          }
          
          function CheckDigit($id) {
              for($i = 0; $i < strlen($id); $i++)
                  if($i % 2 != 0)
                      $Sum .= $id[$i] * 2;
                  else
                      $Sum .= $id[$i];
          
              for($i = 0; $i <= strlen($Sum)-1; $i++)
                  $Digit = $Digit + $Sum[$i];
          
              return ( $Digit % 10 > 0 ? 10 - ($Digit % 10) : 0);
          }
          
          		if('123456789' && ValidID('123456789') > 0){
          }
          

          מערכת מכירות בכל ערוצי המכירה, טלפון-מייל-ואתר
          שיגור הודעות במחירים המשתלמים ביותר
          לפתיחת מערכת https://app.ipsales.co.il/

          dovidD WWWW 2 תגובות תגובה אחרונה
          1
          • dovidD מחובר
            dovidD מחובר
            dovid ניהול
            השיב ליוס ב נערך לאחרונה על ידי dovid
            #6

            @יוס כלומר מה שהיה פה לא עזר לך?
            ופעם הבאה לחכות שתמצא או לעזור מייד?

            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

            בכל נושא אפשר ליצור קשר dovid@tchumim.com

            תגובה 1 תגובה אחרונה
            5
            • WWWW מנותק
              WWWW מנותק
              WWW
              השיב ליוס ב נערך לאחרונה על ידי
              #7

              @יוס הקוד לא כ"כ נכון, יש מספרי זהות שהם פחות מ9 ספרות.

              WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

              A0533057932A תגובה 1 תגובה אחרונה
              0
              • A0533057932A מנותק
                A0533057932A מנותק
                A0533057932
                השיב לWWW ב נערך לאחרונה על ידי
                #8

                @WWW יש להם 0 בהתחלה

                WWWW תגובה 1 תגובה אחרונה
                0
                • WWWW מנותק
                  WWWW מנותק
                  WWW
                  השיב לA0533057932 ב נערך לאחרונה על ידי WWW
                  #9

                  @A0533057932 אמר בבדיקת תקינות מספר תעודת זהות באמצעות PHP:

                  @WWW יש להם 0 בהתחלה

                  מי אמר?
                  צריך להוסיף אפסים בתחילת הקוד, אם רוצים לבדוק ככה.

                  WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                  A0533057932A תגובה 1 תגובה אחרונה
                  0
                  • A0533057932A מנותק
                    A0533057932A מנותק
                    A0533057932
                    השיב לWWW ב נערך לאחרונה על ידי A0533057932
                    #10

                    @WWW אתה עונה לי?
                    אני אמרתי שאין דבר כזה ת.ז. פחות מ9 ספרות ומה שאתה רואה פחות שמגיעים למקום שצריך אימות מוסיפים 0 בהתחלה
                    איך לרשום זאת בקוד שיוסיף 0 אוטומטי במידה ולא מילאו 9 אני לא יודע

                    dovidD תגובה 1 תגובה אחרונה
                    1
                    • dovidD מחובר
                      dovidD מחובר
                      dovid ניהול
                      השיב לA0533057932 ב נערך לאחרונה על ידי dovid
                      #11

                      @A0533057932 בגלל שאתה לא מתכנת לא הבנת את @WWW.
                      הוא טען שהקוד מניח הנחות (שהקלט/הפקיד הקפיד לשים אפסים קודם), וזה דבר לא טוב מבחינת תכנות, האמת בנוגע למס' הזהות לא קשורה פה.

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      4
                      • dovidD dovid העביר נושא זה מ-תכנות ב-

                      בא תתחבר לדף היומי!
                      • התחברות

                      • אין לך חשבון עדיין? הרשמה

                      • התחברו או הירשמו כדי לחפש.
                      • פוסט ראשון
                        פוסט אחרון
                      0
                      • דף הבית
                      • קטגוריות
                      • פוסטים אחרונים
                      • משתמשים
                      • חיפוש
                      • חוקי הפורום