Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Belajar PHP: Mendapatkan Data Siswa Berdasarkan Nomor NISN Secara Realtime

Posted on December 21, 2011

Dalam tutorial kali ini kita akan mencoba mendapatkan data pokok dari seorang siswa yang telah memiliki NISN (Nomor Induk Siswa Nasional) yang dikelola oleh Dapondik, Kemendikbud. Tutorial ini akan bertumpu pada penggunaan library cURL dan manipulasi array-string sederhana.

Prinsip Kerja

Pada dasarnya, data pokok yang akan kita ambil berasal dari hasil pencarian pada situs Dapondik Kemendikbud (http://nisn.dapondik.org/). URL yang dituju adalah http://nisn.dapondik.org/siswa.php. Dengan library cURL, kita akan posting variabel $_GET berupa nisn dengan value nomor NISN seorang siswa. Hasil eksekusi cURL tersebut akan kita olah dengan teknik parsing dan replacing data.

Source Code

Berikut adalah source code dari fungsi untuk mengambil data pokok Siswa berdasarkan NISN dengan PHP:

[sourcecode language=”php”]
//definisikan URL dapodik yang dituju, dipakai server dapodik kota semarang (boleh kota lain, hasil tetap sama)
define(‘NISN_URL’,"http://semarangkota.dapodik.org/siswa.php");

if ( !function_exists( ‘get_nisndata’ ) )
{
function get_nisndata($nisn)
{
$nisn_val = urlencode($nisn); //encode NISN ke format URL
$str = "?nisn=".$nisn_val; //string $_GET yang akan dikirim

// inisialisasi CURL
$data = curl_init();
// setting CURL
curl_setopt($data, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($data, CURLOPT_URL, NISN_URL.$str);
// menjalankan CURL untuk membaca isi file
$hasil = curl_exec($data);
curl_close($data);

$split0 = extract_unit($hasil,’Info Siswa’,’Info Sekolah’); //mengambil teks diantara kata Info Siswa dan Info Sekolah
$split0 = strip_tags($split0); //hilangkan tag HTML dari hasil pengambilan tadi

$nama = extract_unit($split0,’Nama’,’ Jenis Kelamin’); //ambil nama
$nisn = extract_unit($split0,’NISN’,’ Nama’); //ambil NISN
$jenis_kelamin = extract_unit($split0,’Jenis Kelamin’,’ Tingkat’); //ambil jenis kelamin siswa
$tingkat = extract_unit($split0,’Tingkat’,’  ’); //ambil tingkat

$split1 = extract_unit($hasil,’Info Sekolah’,’Tentang Data Siswa’); //ambil teks diantara kata Info Sekolah dan Tentang Data Siswa
$split1 = strip_tags($split1); //hilangkan tag HTML

$npsn = extract_unit($split1,’NPSN’,’ Nama’);
$nama_sekolah = extract_unit($split1,’Nama’,’ Jenjang’);
$jenjang = extract_unit($split1,’Jenjang’,’ Status’);
$status = extract_unit($split1,’Status’,’ ‘);

//bangun array hasil
$hasil = array(‘nama’ => $nama,
‘nisn’ => $nisn,
‘jenis_kelamin’ => $jenis_kelamin,
‘tingkat’ => $tingkat,
‘npsn’ => $npsn,
‘nama_sekolah’ => $nama_sekolah,
‘jenjang’ => $jenjang,
‘status’ => $status
);
return $hasil;

}
}
[/sourcecode]

Untuk melengkapi source tersebut anda perlu menuliskan pula fungsi extract_unit dengan source code berikut:

[sourcecode language=”php”]
if ( !function_exists( ‘extract_unit’ ) )
{
function extract_unit($string, $start, $end)
{
$pos = stripos($string, $start);
$str = substr($string, $pos);
$str_two = substr($str, strlen($start));
$second_pos = stripos($str_two, $end);
$str_three = substr($str_two, 0, $second_pos);
$unit = trim($str_three); // remove whitespaces
return $unit;
}
}
[/sourcecode]

Penggunaan

Untuk menggunakan source tersebut, contoh:

[sourcecode language=”php”]
$data_nisn = get_nisndata(‘0041411454’); //cari data siswa dg NISN 0041411454
echo ‘<pre>’;
print_r($data_nisn);
echo ‘</pre>’;
[/sourcecode]

Screenshoot:

Screenshot Demo Mengambil Data NISN dengan PHP
Screenshot Demo Mengambil Data NISN dengan PHP

Screenshoot data asli: klik disini

Demo:

https://emka.web.iddemo/datanisn/

Download Source:

  • via Ziddu: http://www.ziddu.com/download/17893035/datanisn.7z.html

Terbaru

  • Apa itu Google Analytics 4?
  • Cara Cek Status DTSEN Terbaru, DTSEN Jadi Penentu Bansos PKH & BPNT 2026
  • Nvidia GeForce Now Resmi di Linux!
  • Kode Redeem Blade Ball Roblox Terbaru 1 Februari 2026: Raih Hadiah Spesialmu!
  • Kode Paket Internet Indosat Murah Terbaru 2026: Kuota 25GB Cuma 50 Ribu?
  • AFK Fishing Roblox: Auto Panen Ikan 24 Jam Pakai CC Cloud Phone!
  • Rahasia Meta AI WhatsApp: Cara Ampuh Dapat Cuan dari Chatbot!
  • Gokil! Case Pixel Diskon 90% di Verizon, Buruan Sikat!
  • Apakah APK CashCepat Penipu? Ada Izin Pinjol OJK?
  • Lowongan Kerja Leader di BRI Melalui BFLP Specialist 2026, Cek Syarat Lengkapnya Di Sini!
  • Inilah Cara Ajukan KUR BSI 2026 yang Cair Hingga 500 Juta Tanpa Riba!
  • Ini Trik Supaya Pengajuan KUR BRI 2026 Kalian Cepat Disetujui!
  • Inilah Cara Mengenali Gejala Virus Nipah dan Langkah Pencegahannya
  • Spesifikasi Minimal PC untuk Game Arknights: Endfield
  • Apa itu Pengertian RSVP?
  • Inilah Kode Warna Emas/Gold di Canva
  • Ini Trik Supaya CCTV 24 Jam Nggak Bikin Kantong Jebol Karena Kuota dan Listrik!
  • Belum Tahu Apa Itu Store Associate? Inilah Tugas, Tanggung Jawab, dan Bocoran Gajinya Secara Lengkap
  • Inilah Aturan Saldo Minimal BNI Biar Rekening Kalian Nggak Hangus
  • Apakah Screenshot Story WA Ada Notifnya atau Nggak!
  • Inilah Cara Langganan YouTube Music Premium 2026 Khusus Pelajar Agar Kantong Nggak Jebol!
  • Inilah Kumpulan Ide Bio WhatsApp Keren dan Aesthetic Biar Profil Kalian Makin Hits!
  • Sering Ditolak Pinjaman? Ini Trik Supaya Nama Kalian Bersih dari Blacklist BI Checking
  • Cara Munculin Tanda Love Merah di Story IG, Ternyata Ini Rahasianya!
  • Inilah Cara Transfer DANA ke DANA Tanpa Verifikasi KTP yang Praktis dan Aman!
  • 02129187000 Nomor Apa? Simak Penjelasan Lengkap dan Cara Blokirnya Biar Nggak Terganggu Lagi
  • Sering Ditelepon 14010? Jangan Panik, Inilah Penjelasan Lengkap Mengenai Siapa Pemilik Nomor Tersebut!
  • 818 Nomor Apa, Jangan Langsung Dimatiin Kalau XL Lagi Telepon!
  • 1500597 Nomor Telepon Apa? Ini Dia Jawaban Lengkap dan Cara Menghadapinya!
  • 1500877 Nomor Apa? Ternyata Ini Pemilik Nomor yang Sering Telepon Kalian!
  • Spotify Introduces Group Chat Feature: Sharing Music and Podcasts with Friends Directly
  • Microsoft Will Fix Windows 11 Performance and User Experience Issues in 2026
  • Windows 11 KB5074105 Update Explained
  • Windows 11 Start Menu Resize Issues Explained
  • Definitely Not Fried Chicken Game Explained
  • Cara Membuat Podcast dari PDF dengan NotebookLlama dan Groq
  • Tutorial Membuat Sistem Automatic Content Recognition (ACR) untuk Deteksi Logo
  • Apa itu Google Code Wiki?
  • Cara Membuat Agen AI Otomatis untuk Laporan ESG dengan Python dan LangChain
  • Cara Membuat Pipeline RAG dengan Framework AutoRAG
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2026 emka.web.id | Design: Newspaperly WordPress Theme