MyKad Detail Extractor

03 July 2012

Posted in Open Source, Projects

No. kad pengenalan rakyat Malaysia mempunyai banyak maklumat yang di simpan, tetapi memerlukan card reader yang sesuai untuk mendapatkan maklumat tersebut. Tetapi daripada nombor yang asas 12 digit tersebut juga kita boleh mendapatkan beberapa maklumat, contohnya:

  1. Tarikh lahir
  2. Tempat lahir
  3. Jantina

Bagi pengaturcara yang memerlukan kod untuk mendapatkan ketiga-tiga maklumat tersebut, saya ada tulis kod PHP untuknya. Anda boleh dapatkannya di Github saya yang disertakan dengan satu fail demo.

DOWNLOAD

Penggunaan

Cara menggunakan kod ini sangat mudah, contoh:

// masukkan fail yang diperlukan
require dirname(__FILE__).'/myic.class.php';
$myic = new MyIC;

// dapatkan maklumat dari no. kad pengenalan
$detail = $myic->get( '850202105334' );

Manakala maklumat yang akan anda dapat adalah seperti berikut:

Array
(
    [dob]    => 2 February 1985,
    [state]  => Selangor,
    [gender] => Female
)

Format Tarikh

Pada tetapan asal, kod ini akan menggunakan format j F Y, tetapi dengan menghantar format lain pada parameter yang kedua, anda boleh gunakan format yang lebih sesuai, contohnya:

// dapatkan maklumat dari no. kad pengenalan
$detail = $myic->get( '850202105334', 'Y-m-d' );

Output yang akan anda dapat:

Array
(
    [dob]    => 1985-02-02,
    [state]  => Selangor,
    [gender] => Female
)

Demo

Untuk contoh penggunaan, anda boleh cuba di laman web demo ini.

Muat turun

Anda boleh dapatkan kod ini dari laman Github saya ataupun melalui pautan ini.

Lesen

Kod ini dilesenkan di bawah lesen MIT, dengan kata lain yang lebih mudah difahami, anda boleh:

  • menggunakan
  • menyalin
  • mengubahsuai
  • mencantum dengan kod lain
  • menerbitkan
  • mengedarnya pada pihak lain
  • sub-lesen
  • dan/atau menjual

tanpa sebarang kekangan, tetapi perlu menepati syarat berikut:

Notis hakcipta dan juga notis kebenaran ini perlu disertakan sekali di dalam semua salinan kod anda.

Dan akhir sekali:

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Changelog

v1.0.1

- Added input filtering to strip out all non-numeric characters
- Added condition to make sure the input is 12 characters

v1.0.0

- First release with demo file

Comments (3)

  • chekwan

    chekwan

    04 July 2012 at 05:09 |
    syabas syah..
  • Prebetsabu

    Prebetsabu

    04 July 2012 at 05:11 |
    Reader boleh pakai memana gmpc reader? Dia auto select driver n reader ke? Tq

    www.masviona.com
    • Syahril Zulkefli

      Syahril Zulkefli

      04 July 2012 at 05:41 |
      yang ini hanya untuk web application yang user masukkan no kp secara manual aje, yang ada guna card reader tu masih dalam proses belajar, kena study Java atau C++ balik.

Leave a comment

You are commenting as guest.