Fitur utama pada SIMRS (Sistem Informasi Manajemen Rumah Sakit) salah satunya adalah manajemen data pasien. Selanjutnya fitur ini dapat dikembangkan menjadi Rekam Medis Elektronik (RME) yang dapat disesuaikan secara dinamis dengan kebutuhan. Pada umumnya, fitur manajemen data pasien ini tidak lepas dari data informasi lain. Misalnya, referensi data wilayah, validasi nomor identias, nomor BPJS kesehatan dan informasi lain yang sifatnya dinamis (dapat berubah sewaktu-waktu).


Secara singkat, manajemen data pasien adalah sekumpulan proses yang berorientasi pada proses masukan data (input), pembaharuan data (update), penyajian data (output) dan penghapusan data itu sendiri dengan maksud efisiensi ruang penyimpanan. Dalam pengelolaan data pasien, kita akan mengenal dengan istilah nomor rekam medis. Oleh sebab itu, pada kesempatan kali ini kita akan menggunakan nomor rekam medis tersebut sebagai kunci utama (primary key). Selain itu, pengelolaan data pasien secara sistem dapat bertahan lebih lama dibandingkan tanpa menggunakan sistem. Dengan adanya aplikasi SIMRS, membantu unit/divisi rekam medis untuk meningkatkan efisiensi penyimpanan berkas.


Pada artikel kali ini kita akan membahas bagaimana mengembangkan atau membuat fitur manajemen data pasien, yang terintegrasi dengan aplikasi SIMRS berbasis Web yang sudah kita buat pada artikel sebelumnya. Untuk mempermudah penejelasannya, kita akan melanjutkan proyek yang sudah kita buat. Silahkan bagi anda yang belum mengikuti seri belajar sebelumnya dapat membaca artikel pada tautan berikut ini:


Untuk mempersingkat waktu, kita langsung saja masuk ke intinya.


1. Membuat Tabel Pasien dan Wilayah

Buatlah dua buah tabel dengan nama 'pasien' dan 'wilayah'. Masing-masing fungsi tabelnya dijelaskan sebagai berikut.

  • Tabel 'pasien' : Digunakan untuk menyimpan data pasien. Tabel ini merupakan tabel utama yang akan menghasilkan nilai kunci utama untuk nomor rekam medis.

  • Tabel 'wilayah' : Digunakan untuk menyimpan data pasien. Tabel ini merupakan tabel utama yang akan menghasilkan nilai kunci utama untuk nomor rekam medis.

Kedua buah tabel tersebut bisa export langsung dari project yang tersedia di git hub. Silahkan lihat tautan yang ada di akhir artikel ini.


2. Buat Fungsi Untuk Menampilkan Data Sesuai Format

Pada project yang sudah kita buat sebelumnya, lakukan sedikit perubahan pada file yang ada di directory _Config/Function.php berikut ini:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
    //Memanggil Detail Data
    function getDataDetail($Conn,$NamaDb,$NamaParam,$IdParam,$Kolom){
        $QryParam = mysqli_query($Conn,"SELECT * FROM $NamaDb WHERE $NamaParam='$IdParam'")or die(mysqli_error($Conn));
        $DataParam = mysqli_fetch_array($QryParam);
        if(empty($DataParam[$Kolom])){
            $Response="";
        }else{
            $Response=$DataParam[$Kolom];
        }
        return $Response;
    }
    //Format Tanggal
    function FormatDateTime($Format,$Tanggal){
        date_default_timezone_set('Asia/Jakarta');
        $strtotime=strtotime($Tanggal);
        $Response=date($Format, $strtotime);
        return $Response;
    }
    //Validasi Input Hanya Boleh Angka Huruf dan Spasi
    function validasiInput($input) {
        // Hanya huruf, angka, dan spasi yang diperbolehkan
        $pattern = '/^[A-Za-z0-9\s]+$/';
        // Lakukan validasi
        if (preg_match($pattern, $input)) {
            $Response="Success";
        } else {
            $Response="Hanya Boleh Huruf, Angka dan Spasi";
        }
        return $Response;
    }
?>


3. Buat Routing Halaman Menuju Halaman Pasien

Buka directory _Partial/RoutingPage.php dan lakukan sedikit perubahan sebagai berikut

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
<?php
    if(empty($_GET['Page'])){
        include "_Page/Beranda/Beranda.php";
    }else{
        $Page=$_GET['Page'];
        if($Page=="Akses"){
            include "_Page/Akses/Akses.php";
        }else{
            if($Page=="Pasien"){
                include "_Page/Pasien/Pasien.php";
            }
        }
    }
?>

Agar setiap event dapat ditangani oleh jQuery buat routing untuk file _Partial/RoutingJs.php berikut ini:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<?php 
    //Routing File JS Berdasarkan Halaman
    if(empty($_GET['Page'])){
        echo '<script type="text/javascript" src="_Page/Beranda/Beranda.js"></script>';
    }else{
        $Page=$_GET['Page'];
        if($Page=="Akses"){
            echo '<script type="text/javascript" src="_Page/Akses/Akses.js"></script>';
        }else{
            if($Page=="Pasien"){
                echo '<script type="text/javascript" src="_Page/Pasien/Pasien.js"></script>';
            }
        }
    }
?>

Untuk membedakan halaman pasien dengan halaman lain, buat routing pada file _Partial/PageTitle.php berikut ini:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
    if(empty($_GET['Page'])){
        echo '<div class="pagetitle">';
        echo '  <h1><i class="bi bi-grid"></i> Dashboard</h1>';
        echo '</div>';
    }else{
        $Page=$_GET['Page'];
        if($Page=="Akses"){
            echo '<div class="pagetitle">';
            echo '  <h1><i class="bi bi-key"></i> Akses</h1>';
            echo '</div>';
        }else{
            if($Page=="Pasien"){
                echo '<div class="pagetitle">';
                echo '  <h1><i class="bi bi-person"></i> Pasien</h1>';
                echo '</div>';
            }
        }
    }
    
?>

Kemudian untuk penanganan form agar lebih efisien, kita buat dalam bentuk halaman modal. Lakukan perubahan pada file _Partial/Modal.php berikut ini:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
<?php
    if(empty($_GET['Page'])){
        include "_Page/Beranda/ModalBeranda.php";
    }else{
        $Page=$_GET['Page'];
        //Nanti Di Routing Fitur Modal atau Popup Di Sini
        if($Page=="Akses"){
            include "_Page/Akses/ModalAkses.php";
        }else{
            if($Page=="Pasien"){
                include "_Page/Pasien/ModalPasien.php";
            }
        }
    }
    //Modal Global
    include "_Page/Logout/ModalLogout.php";
?>


3. Membuat Halaman Utama Pasien

Buat sebuah directory (folder baru) dengan nama 'Pasien' pada folder _Page sehingga susunan directorynya seperti ini:

Buat masing-masing file tersebut dengan script berikut ini:

  • Buat file dengan nama 'FormDetailPasien.php' kemudian ketik / copas script berikut ini:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    <?php
        //Koneksi
        date_default_timezone_set('Asia/Jakarta');
        include "../../_Config/Connection.php";
        include "../../_Config/Function.php";
        //Tangkap id_pasien
        if(empty($_POST['id_pasien'])){
            echo '<div class="row">';
            echo '  <div class="col-md-12 text-center text-danger mb-3">';
            echo '      ID Pasien Tidak Boleh Kosong!.';
            echo '  </div>';
            echo '</div>';
        }else{
            $id_pasien=$_POST['id_pasien'];
            $nama=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'nama');
            $nik=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'nik');
            $no_bpjs=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'no_bpjs');
            $kontak=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'kontak');
            $tempat_lahir=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'tempat_lahir');
            $tanggal_lahir=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'tanggal_lahir');
            $gender=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'gender');
            $provinsi=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'provinsi');
            $kabupaten=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'kabupaten');
            $kecamatan=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'kecamatan');
            $desa=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'desa');
            $alamat=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'alamat');
            $golongan_darah=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'golongan_darah');
            $status=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'status');
            $tanggal_daftar=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'tanggal_daftar');
            //Membuka Nama nama wilayah
            $provinsi=getDataDetail($Conn,'wilayah','kode',$provinsi,'nama');
            $kabupaten=getDataDetail($Conn,'wilayah','kode',$kabupaten,'nama');
            $kecamatan=getDataDetail($Conn,'wilayah','kode',$kecamatan,'nama');
            $desa=getDataDetail($Conn,'wilayah','kode',$desa,'nama');
    ?>
        <div class="row mb-3">
            <div class="col-md-4">Nama</div>
            <div class="col-md-8"><code><?php echo "$nama"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">NIK</div>
            <div class="col-md-8"><code><?php echo "$nik"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">No.BPJS</div>
            <div class="col-md-8"><code><?php echo "$no_bpjs"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Kontak</div>
            <div class="col-md-8"><code><?php echo "$kontak"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">TTL</div>
            <div class="col-md-8"><code><?php echo "$tempat_lahir, $tanggal_lahir"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Gender</div>
            <div class="col-md-8"><code><?php echo "$gender"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Provinsi</div>
            <div class="col-md-8"><code><?php echo "$provinsi"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Kabupaten/Kota</div>
            <div class="col-md-8"><code><?php echo "$kabupaten"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Kecamatan</div>
            <div class="col-md-8"><code><?php echo "$kecamatan"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Desa/Kelurahan</div>
            <div class="col-md-8"><code><?php echo "$desa"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Alamat</div>
            <div class="col-md-8"><code><?php echo "$alamat"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Gol.Darah</div>
            <div class="col-md-8"><code><?php echo "$golongan_darah"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Status</div>
            <div class="col-md-8"><code><?php echo "$status"; ?></code></div>
        </div>
        <div class="row mb-3">
            <div class="col-md-4">Tanggal Daftar</div>
            <div class="col-md-8"><code><?php echo "$tanggal_daftar"; ?></code></div>
        </div>
    <?php }?>
    
  • Buat file dengan nama 'FormEditPasien.php' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    <?php
        //Koneksi
        date_default_timezone_set('Asia/Jakarta');
        include "../../_Config/Connection.php";
        include "../../_Config/Function.php";
        //Tangkap id_pasien
        if(empty($_POST['id_pasien'])){
            echo '<div class="row">';
            echo '  <div class="col-md-12 mb-3 text-center text-danger">';
            echo '      ID Pasien Tidak Boleh Kosong!.';
            echo '  </div>';
            echo '</div>';
        }else{
            $id_pasien=$_POST['id_pasien'];
            $nama=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'nama');
            $nik=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'nik');
            $no_bpjs=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'no_bpjs');
            $kontak=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'kontak');
            $tempat_lahir=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'tempat_lahir');
            $tanggal_lahir=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'tanggal_lahir');
            $gender=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'gender');
            $provinsi=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'provinsi');
            $kabupaten=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'kabupaten');
            $kecamatan=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'kecamatan');
            $desa=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'desa');
            $alamat=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'alamat');
            $golongan_darah=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'golongan_darah');
            $status=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'status');
            $tanggal_daftar=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'tanggal_daftar');
            //Menghitung panjang karakter
            $KarNama = strlen($nama);
            $KarTempatLahir = strlen($tanggal_lahir);
            $KarAlamat = strlen($alamat);
    ?>
        <script>
            //Ketika Mengetik nama
            $('#nama2').keyup(function(){
                var textValue = $('#nama2').val();
                //Hitung Jumlah Karakter
                var lengthValue=textValue.length;
                //menampilkan Pada label
                $('#panjang_nama2').html(lengthValue);
                //Batas Krakter Yang diketik
                var maxLength=50;
                if (lengthValue > maxLength) {
                    // Potong teks menjadi maxLength karakter
                    var truncatedText = textValue.substring(0, maxLength);
                    // Atur nilai input menjadi teks yang dipotong
                    $(this).val(truncatedText);
                }
            });
            //Ketika Mengetik tempat_lahir
            $('#tempat_lahir2').keyup(function(){
                var textValue = $('#tempat_lahir2').val();
                //Hitung Jumlah Karakter
                var lengthValue=textValue.length;
                //menampilkan Pada label
                $('#panjang_tempat_lahir2').html(lengthValue);
                //Batas Krakter Yang diketik
                var maxLength=20;
                if (lengthValue > maxLength) {
                    // Potong teks menjadi maxLength karakter
                    var truncatedText = textValue.substring(0, maxLength);
                    // Atur nilai input menjadi teks yang dipotong
                    $(this).val(truncatedText);
                }
            });
            //Ketika Mengetik alamat
            $('#alamat2').keyup(function(){
                var textValue = $('#alamat2').val();
                //Hitung Jumlah Karakter
                var lengthValue=textValue.length;
                //menampilkan Pada label
                $('#panjang_alamat2').html(lengthValue);
                //Batas Krakter Yang diketik
                var maxLength=50;
                if (lengthValue > maxLength) {
                    // Potong teks menjadi maxLength karakter
                    var truncatedText = textValue.substring(0, maxLength);
                    // Atur nilai input menjadi teks yang dipotong
                    $(this).val(truncatedText);
                }
            });
            //propinsi
            $('#propinsi2').change(function(){
                $('#desa2').html("<option>Pilih</option>");
                $('#kecamatan2').html("<option>Pilih</option>");
                $('#kabupaten2').html("<option>Loading..</option>");
                var kategori = "Kota Kabupaten";
                var KodeWilayah = $('#propinsi2').val();
                $.ajax({
                    type 	: 'POST',
                    url 	: '_Page/Pasien/PilihWilayah.php',
                    data 	:  {kategori: kategori, KodeWilayah: KodeWilayah},
                    success : function(data){
                        $('#kabupaten2').html(data);
                    }
                });
            });
            //Kabupaten
            $('#kabupaten2').change(function(){
                $('#desa2').html("<option>Pilih</option>");
                $('#kecamatan2').html("<option>Loading..</option>");
                var kategori = "Kecamatan";
                var KodeWilayah = $('#kabupaten2').val();
                $.ajax({
                    type 	: 'POST',
                    url 	: '_Page/Pasien/PilihWilayah.php',
                    data 	:  {kategori: kategori, KodeWilayah: KodeWilayah},
                    success : function(data){
                        $('#kecamatan2').html(data);
                    }
                });
            });
            //Kecamatan
            $('#kecamatan2').change(function(){
                $('#desa2').html("<option>Loading..</option>");
                var kategori = "Kelurahan";
                var KodeWilayah = $('#kecamatan2').val();
                $.ajax({
                    type 	: 'POST',
                    url 	: '_Page/Pasien/PilihWilayah.php',
                    data 	:  {kategori: kategori, KodeWilayah: KodeWilayah},
                    success : function(data){
                        $('#desa2').html(data);
                    }
                });
            });
        </script>
        <input type="hidden" name="id_pasien" id="id_pasien" value="<?php echo "$id_pasien"; ?>">
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="nama2">Nama Lengkap</label>
            </div>
            <div class="col-md-8">
                <input type="text" name="nama" id="nama2" class="form-control" value="<?php echo "$nama"; ?>">
                <small>
                    <code id="panjang_nama2" class="text-dark"><?php echo $KarNama; ?></code>/<code class="text-info">50</code>
                </small>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="nik">NIK</label>
            </div>
            <div class="col-md-8">
                <input type="text" name="nik" id="nik" class="form-control" value="<?php echo "$nik"; ?>">
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="no_bpjs">No.BPJS</label>
            </div>
            <div class="col-md-8">
                <input type="text" name="no_bpjs" id="no_bpjs" class="form-control" value="<?php echo "$no_bpjs"; ?>">
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="kontak">Nomor Kontak</label>
            </div>
            <div class="col-md-8">
                <input type="text" name="kontak" id="kontak" class="form-control" placeholder="62" value="<?php echo "$kontak"; ?>">
                <small>Hanya boleh angka (maksimal 20 karakter)</small>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="tempat_lahir2">Tempat Lahir</label>
            </div>
            <div class="col-md-8">
                <input type="text" name="tempat_lahir" id="tempat_lahir2" class="form-control" value="<?php echo "$tempat_lahir"; ?>">
                <small>
                    <code id="panjang_tempat_lahir2" class="text-dark"><?php echo $KarTempatLahir; ?></code>/<code class="text-info">20</code>
                </small>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="tanggal_lahir">Tanggal Lahir</label>
            </div>
            <div class="col-md-8">
                <input type="date" name="tanggal_lahir" id="tanggal_lahir" class="form-control" value="<?php echo "$tanggal_lahir"; ?>">
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="gender">Gender</label>
            </div>
            <div class="col-md-8">
                <select name="gender" id="gender" class="form-control">
                    <option <?php if($gender==""){echo "selected";} ?> value="">Pilih</option>
                    <option <?php if($gender=="Perempuan"){echo "selected";} ?> value="Perempuan">Perempuan</option>
                    <option <?php if($gender=="Laki-laki"){echo "selected";} ?> value="Laki-laki">Laki-laki</option>
                </select>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="propinsi2">Provinsi</label>
            </div>
            <div class="col-md-8">
                <select name="propinsi" id="propinsi2" class="form-control">
                    <option value="">Pilih</option>
                    <?php
                        //List Provinsi
                        $query = mysqli_query($Conn, "SELECT*FROM wilayah WHERE kategori='Provinsi' ORDER BY nama ASC");
                        while ($data = mysqli_fetch_array($query)) {
                            $id_wilayah=$data['id_wilayah'];
                            $KodeWilayah=$data['kode'];
                            $NamaWilayah=$data['nama'];
                            if($provinsi==$KodeWilayah){
                                echo '<option selected value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                            }else{
                                echo '<option value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                            }
                        }
                    ?>
                </select>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="kabupaten2">Kabupaten</label>
            </div>
            <div class="col-md-8">
                <select name="kabupaten" id="kabupaten2" class="form-control">
                    <option value="">Pilih</option>
                    <?php
                        if(!empty($provinsi)){
                            //List Kabupaten
                            $query = mysqli_query($Conn, "SELECT*FROM wilayah WHERE kategori='Kota Kabupaten' AND kode like '%$provinsi%' ORDER BY nama ASC");
                            while ($data = mysqli_fetch_array($query)) {
                                $id_wilayah=$data['id_wilayah'];
                                $KodeWilayah=$data['kode'];
                                $NamaWilayah=$data['nama'];
                                if($kabupaten==$KodeWilayah){
                                    echo '<option selected value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                                }else{
                                    echo '<option value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                                }
                            }
                        }
                    ?>
                </select>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="kecamatan2">Kecamatan</label>
            </div>
            <div class="col-md-8">
                <select name="kecamatan" id="kecamatan2" class="form-control">
                    <option value="">Pilih</option>
                    <?php
                        if(!empty($kabupaten)){
                            //List Kabupaten
                            $query = mysqli_query($Conn, "SELECT*FROM wilayah WHERE kategori='Kecamatan' AND kode like '%$kabupaten%' ORDER BY nama ASC");
                            while ($data = mysqli_fetch_array($query)) {
                                $id_wilayah=$data['id_wilayah'];
                                $KodeWilayah=$data['kode'];
                                $NamaWilayah=$data['nama'];
                                if($kecamatan==$KodeWilayah){
                                    echo '<option selected value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                                }else{
                                    echo '<option value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                                }
                            }
                        }
                    ?>
                </select>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="desa2">Desa</label>
            </div>
            <div class="col-md-8">
                <select name="desa" id="desa2" class="form-control">
                    <option value="">Pilih</option>
                    <?php
                        if(!empty($kecamatan)){
                            //List Desa
                            $query = mysqli_query($Conn, "SELECT*FROM wilayah WHERE kategori='Kelurahan' AND kode like '%$kecamatan%' ORDER BY nama ASC");
                            while ($data = mysqli_fetch_array($query)) {
                                $id_wilayah=$data['id_wilayah'];
                                $KodeWilayah=$data['kode'];
                                $NamaWilayah=$data['nama'];
                                if($desa==$KodeWilayah){
                                    echo '<option selected value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                                }else{
                                    echo '<option value="'.$KodeWilayah.'">'.$NamaWilayah.'</option>';
                                }
                            }
                        }
                    ?>
                </select>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="alamat2">Alamat</label>
            </div>
            <div class="col-md-8">
                <textarea name="alamat" id="alamat2" class="form-control"><?php echo $alamat; ?></textarea>
                <code id="panjang_alamat2" class="text-dark"><?php echo $KarAlamat; ?></code>/<code class="text-info">50</code>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="golongan_darah">Golongan Darah</label>
            </div>
            <div class="col-md-8">
                <select name="golongan_darah" id="golongan_darah" class="form-control">
                    <option <?php if($golongan_darah==""){echo "selected";} ?> value="">Pilih</option>
                    <option <?php if($golongan_darah=="A"){echo "selected";} ?> value="A">A</option>
                    <option <?php if($golongan_darah=="B"){echo "selected";} ?> value="B">B</option>
                    <option <?php if($golongan_darah=="AB"){echo "selected";} ?> value="AB">AB</option>
                    <option <?php if($golongan_darah=="O"){echo "selected";} ?> value="O">O</option>
                </select>
            </div>
        </div>
        <div class="row mb-4">
            <div class="col-md-4">
                <label for="status">Satatus Pasien</label>
            </div>
            <div class="col-md-8">
                <select name="status" id="status" class="form-control">
                    <option <?php if($status==""){echo "selected";} ?> value="">Pilih</option>
                    <option <?php if($status=="Aktiv"){echo "selected";} ?> value="Aktiv">Aktiv</option>
                    <option <?php if($status=="Non Aktiv"){echo "selected";} ?> value="Non Aktiv">Non Aktiv</option>
                </select>
            </div>
        </div>
    <?php }?>
    
  • Buat file dengan nama 'FormKeyword.php' kemudian ketik / copas script berikut ini:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <?php
        include "../../_Config/Connection.php";
        if(empty($_POST['keyword_by'])){
            echo '<label for="keyword">Kata Kunci</label>';
            echo '<input type="text" name="keyword" id="keyword" class="form-control">';
        }else{
            $keyword_by=$_POST['keyword_by'];
            if($keyword_by=="gender"){
                echo '<label for="keyword">Kata Kunci</label>';
                echo '<select name="keyword" id="keyword" class="form-control">';
                echo '  <option value="">Pilih</option>';
                echo '  <option value="Perempuan">Perempuan</option>';
                echo '  <option value="Laki-laki">Laki-laki</option>';
                echo '</select>';
            }else{
                if($keyword_by=="status"){
                    echo '<label for="keyword">Kata Kunci</label>';
                    echo '<select name="keyword" id="keyword" class="form-control">';
                    echo '  <option value="">Pilih</option>';
                    echo '  <option value="Aktiv">Aktiv</option>';
                    echo '  <option value="Non Aktiv">Non Aktiv</option>';
                    echo '</select>';
                }else{
                    if($keyword_by=="golongan_darah"){
                        echo '<label for="keyword">Kata Kunci</label>';
                        echo '<select name="keyword" id="keyword" class="form-control">';
                        echo '  <option value="">Pilih</option>';
                        echo '  <option value="A">A</option>';
                        echo '  <option value="B">B</option>';
                        echo '  <option value="AB">AB</option>';
                        echo '  <option value="O">O</option>';
                        echo '</select>';
                    }else{
                        if($keyword_by=="tanggal_daftar"){
                            echo '<label for="keyword">Kata Kunci</label>';
                            echo '<input type="date" name="keyword" id="keyword" class="form-control">';
                        }else{
                            echo '<label for="keyword">Kata Kunci</label>';
                            echo '<input type="text" name="keyword" id="keyword" class="form-control">';
                        }
                    }
                }
            }
        }
    ?>
    
  • Buat file dengan nama 'ModalPasien.php' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    <div class="modal fade" id="ModalTambahPasien" tabindex="-1">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <form action="javascript:void(0);" id="ProsesTambahPasien">
                    <div class="modal-header">
                        <h5 class="modal-title text-dark"><i class="bi bi-plus"></i> Tambah Pasien</h5>
                        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                    </div>
                    <div class="modal-body">
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="nama">Nama Lengkap</label>
                            </div>
                            <div class="col-md-8">
                                <input type="text" name="nama" id="nama" class="form-control">
                                <small>
                                    <code id="panjang_nama" class="text-dark">0</code>/<code class="text-info">50</code>
                                </small>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="nik">NIK</label>
                            </div>
                            <div class="col-md-8">
                                <input type="text" name="nik" id="nik" class="form-control">
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="no_bpjs">No.BPJS</label>
                            </div>
                            <div class="col-md-8">
                                <input type="text" name="no_bpjs" id="no_bpjs" class="form-control">
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="kontak">Nomor Kontak</label>
                            </div>
                            <div class="col-md-8">
                                <input type="text" name="kontak" id="kontak" class="form-control" placeholder="62">
                                <small>Hanya boleh angka (maksimal 20 karakter)</small>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="tempat_lahir">Tempat Lahir</label>
                            </div>
                            <div class="col-md-8">
                                <input type="text" name="tempat_lahir" id="tempat_lahir" class="form-control">
                                <small>
                                    <code id="panjang_tempat_lahir" class="text-dark">0</code>/<code class="text-info">20</code>
                                </small>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="tanggal_lahir">Tanggal Lahir</label>
                            </div>
                            <div class="col-md-8">
                                <input type="date" name="tanggal_lahir" id="tanggal_lahir" class="form-control">
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="gender">Gender</label>
                            </div>
                            <div class="col-md-8">
                                <select name="gender" id="gender" class="form-control">
                                    <option value="">Pilih</option>
                                    <option value="Perempuan">Perempuan</option>
                                    <option value="Laki-laki">Laki-laki</option>
                                </select>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="propinsi">Provinsi</label>
                            </div>
                            <div class="col-md-8">
                                <select name="propinsi" id="propinsi" class="form-control">
                                    <option value="">Pilih</option>
                                    <?php
                                        //List Provinsi
                                        $query = mysqli_query($Conn, "SELECT*FROM wilayah WHERE kategori='Provinsi' ORDER BY nama ASC");
                                        while ($data = mysqli_fetch_array($query)) {
                                            $id_wilayah=$data['id_wilayah'];
                                            $kode=$data['kode'];
                                            $nama=$data['nama'];
                                            echo '<option value="'.$kode.'">'.$nama.'</option>';
                                        }
                                    ?>
                                </select>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="kabupaten">Kabupaten</label>
                            </div>
                            <div class="col-md-8">
                                <select name="kabupaten" id="kabupaten" class="form-control">
                                    <option value="">Pilih</option>
                                </select>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="kecamatan">Kecamatan</label>
                            </div>
                            <div class="col-md-8">
                                <select name="kecamatan" id="kecamatan" class="form-control">
                                    <option value="">Pilih</option>
                                </select>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="desa">Desa</label>
                            </div>
                            <div class="col-md-8">
                                <select name="desa" id="desa" class="form-control">
                                    <option value="">Pilih</option>
                                </select>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="alamat">Alamat</label>
                            </div>
                            <div class="col-md-8">
                                <textarea name="alamat" id="alamat" class="form-control"></textarea>
                                <code id="panjang_alamat" class="text-dark">0</code>/<code class="text-info">50</code>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="golongan_darah">Golongan Darah</label>
                            </div>
                            <div class="col-md-8">
                                <select name="golongan_darah" id="golongan_darah" class="form-control">
                                    <option value="">Pilih</option>
                                    <option value="A">A</option>
                                    <option value="B">B</option>
                                    <option value="AB">AB</option>
                                    <option value="O">O</option>
                                </select>
                            </div>
                        </div>
                        <div class="row mb-4">
                            <div class="col-md-4">
                                <label for="status">Satatus Pasien</label>
                            </div>
                            <div class="col-md-8">
                                <select name="status" id="status" class="form-control">
                                    <option value="">Pilih</option>
                                    <option value="Aktiv">Aktiv</option>
                                    <option value="Non Aktiv">Non Aktiv</option>
                                </select>
                            </div>
                        </div>
                        <div class="row">
                            <div class="col-md-12 mt-3" id="NotifikasiTambahPasien">
                                <small><code class="text-primary">Pastkan data pasien yang anda input sudah benar</code></small>
                            </div>
                        </div>
                    </div>
                    <div class="modal-footer">
                        <button type="submit" class="btn btn-success btn-rounded">
                            <i class="bi bi-save"></i> Simpan
                        </button>
                        <button type="button" class="btn btn-dark btn-rounded" data-bs-dismiss="modal">
                            <i class="bi bi-x-circle"></i> Tutup
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>
    <div class="modal fade" id="ModalDetailPasien" tabindex="-1">
        <div class="modal-dialog modal-md">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title text-dark"><i class="bi bi-info-circle"></i> Detail Pasien</h5>
                    <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                </div>
                <div class="modal-body" id="FormDetailPasien">
                    <!-- Menampilkan Detail pasien Disini -->
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-dark btn-rounded" data-bs-dismiss="modal">
                        <i class="bi bi-x-circle"></i> Tutup
                    </button>
                </div>
            </div>
        </div>
    </div>
    <div class="modal fade" id="ModalEditPasien" tabindex="-1">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <form action="javascript:void(0);" id="ProsesEditPasien">
                    <div class="modal-header">
                        <h5 class="modal-title text-dark"><i class="bi bi-pencil-square"></i> Edit Pasien</h5>
                        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                    </div>
                    <div class="modal-body">
                        <div id="FormEditPasien">
                            <!-- Form Edit Pasien -->
                        </div>
                        <div class="row">
                            <div class="col-md-12 mt-3" id="NotifikasiEditPasien">
                                <small><code class="text-primary">Pastkan data pasien yang anda input sudah benar</code></small>
                            </div>
                        </div>
                    </div>
                    <div class="modal-footer">
                        <button type="submit" class="btn btn-success btn-rounded">
                            <i class="bi bi-save"></i> Simpan
                        </button>
                        <button type="button" class="btn btn-dark btn-rounded" data-bs-dismiss="modal">
                            <i class="bi bi-x-circle"></i> Tutup
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>
    <div class="modal fade" id="ModalHapusPasien" tabindex="-1">
        <div class="modal-dialog modal-sm">
            <div class="modal-content">
                <form action="javascript:void(0);" id="ProsesHapusPasien">
                    <div class="modal-header">
                        <h5 class="modal-title text-dark"><i class="bi bi-trash"></i> Hapus Pasien</h5>
                        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                    </div>
                    <div class="modal-body">
                        <input type="hidden" name="id_pasien" id="PutIdPasien">
                        <div class="row">
                            <div class="col-md-12 text-center mt-3">
                                <img src="assets/img/delete.gif" width="80%">
                            </div>
                        </div>
                        <div class="row">
                            <div class="col-md-12 mt-3" id="NotifikasiHapusPasien">
                                <small><code class="text-primary">Apakah anda yakin akan menghapus data ini?</code></small>
                            </div>
                        </div>
                    </div>
                    <div class="modal-footer">
                        <button type="submit" class="btn btn-success btn-rounded">
                            <i class="bi bi-check"></i> Ya, Hapus
                        </button>
                        <button type="button" class="btn btn-dark btn-rounded" data-bs-dismiss="modal">
                            <i class="bi bi-x-circle"></i> Tutup
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>
    
  • Buat file dengan nama 'Pasien.js' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    //Menampilkan Akses Pertama Kali
    $('#MenampilkanTabelPasien').html("Loading...");
    var ProsesBatas = $('#ProsesBatas').serialize();
    $.ajax({
        type 	    : 'POST',
        url 	    : '_Page/Pasien/TabelPasien.php',
        data 	    :  ProsesBatas,
        success     : function(data){
            $('#MenampilkanTabelPasien').html(data);
        }
    });
    //Ketika Batas Data Diubah
    $('#batas').change(function(){
        var ProsesBatas = $('#ProsesBatas').serialize();
        $('#MenampilkanTabelPasien').html('Loading...');
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/TabelPasien.php',
            data 	    :  ProsesBatas,
            success     : function(data){
                $('#MenampilkanTabelPasien').html(data);
            }
        });
    });
    //Ketika keyword_by
    $('#keyword_by').change(function(){
        var keyword_by = $('#keyword_by').val();
        $('#FormKeyword').html('Loading...');
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/FormKeyword.php',
            data 	    :  {keyword_by: keyword_by},
            success     : function(data){
                $('#FormKeyword').html(data);
            }
        });
    });
    //Ketika Submit Proses Filter Dan Pencarian
    $('#ProsesBatas').submit(function(){
        var ProsesBatas = $('#ProsesBatas').serialize();
        $('#MenampilkanTabelPasien').html('Loading...');
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/TabelPasien.php',
            data 	    :  ProsesBatas,
            success     : function(data){
                $('#MenampilkanTabelPasien').html(data);
            }
        });
    });
    //Ketika Modal Tambah Pasien Muncul
    $('#ModalTambahPasien').on('show.bs.modal', function (e) {
        $('#NotifikasiTambahPasien').html('<small><code class="text-primary">Pastkan data pasien yang anda input sudah benar</code></small>');
    });
    //Ketika Mengetik nama
    $('#nama').keyup(function(){
        var textValue = $('#nama').val();
        //Hitung Jumlah Karakter
        var lengthValue=textValue.length;
        //menampilkan Pada label
        $('#panjang_nama').html(lengthValue);
        //Batas Krakter Yang diketik
        var maxLength=50;
        if (lengthValue > maxLength) {
            // Potong teks menjadi maxLength karakter
            var truncatedText = textValue.substring(0, maxLength);
            // Atur nilai input menjadi teks yang dipotong
            $(this).val(truncatedText);
        }
    });
    //Ketika Mengetik tempat_lahir
    $('#tempat_lahir').keyup(function(){
        var textValue = $('#tempat_lahir').val();
        //Hitung Jumlah Karakter
        var lengthValue=textValue.length;
        //menampilkan Pada label
        $('#panjang_tempat_lahir').html(lengthValue);
        //Batas Krakter Yang diketik
        var maxLength=20;
        if (lengthValue > maxLength) {
            // Potong teks menjadi maxLength karakter
            var truncatedText = textValue.substring(0, maxLength);
            // Atur nilai input menjadi teks yang dipotong
            $(this).val(truncatedText);
        }
    });
    //Ketika Mengetik alamat
    $('#alamat').keyup(function(){
        var textValue = $('#alamat').val();
        //Hitung Jumlah Karakter
        var lengthValue=textValue.length;
        //menampilkan Pada label
        $('#panjang_alamat').html(lengthValue);
        //Batas Krakter Yang diketik
        var maxLength=50;
        if (lengthValue > maxLength) {
            // Potong teks menjadi maxLength karakter
            var truncatedText = textValue.substring(0, maxLength);
            // Atur nilai input menjadi teks yang dipotong
            $(this).val(truncatedText);
        }
    });
    //propinsi
    $('#propinsi').change(function(){
        $('#desa').html("<option>Pilih</option>");
        $('#kecamatan').html("<option>Pilih</option>");
        $('#kabupaten').html("<option>Loading..</option>");
        var kategori = "Kota Kabupaten";
        var KodeWilayah = $('#propinsi').val();
        $.ajax({
            type 	: 'POST',
            url 	: '_Page/Pasien/PilihWilayah.php',
            data 	:  {kategori: kategori, KodeWilayah: KodeWilayah},
            success : function(data){
                $('#kabupaten').html(data);
            }
        });
    });
    //Kabupaten
    $('#kabupaten').change(function(){
        $('#desa').html("<option>Pilih</option>");
        $('#kecamatan').html("<option>Loading..</option>");
        var kategori = "Kecamatan";
        var KodeWilayah = $('#kabupaten').val();
        $.ajax({
            type 	: 'POST',
            url 	: '_Page/Pasien/PilihWilayah.php',
            data 	:  {kategori: kategori, KodeWilayah: KodeWilayah},
            success : function(data){
                $('#kecamatan').html(data);
            }
        });
    });
    //Kecamatan
    $('#kecamatan').change(function(){
        $('#desa').html("<option>Loading..</option>");
        var kategori = "Kelurahan";
        var KodeWilayah = $('#kecamatan').val();
        $.ajax({
            type 	: 'POST',
            url 	: '_Page/Pasien/PilihWilayah.php',
            data 	:  {kategori: kategori, KodeWilayah: KodeWilayah},
            success : function(data){
                $('#desa').html(data);
            }
        });
    });
    //Ketika Proses Submit Tambah Pasien
    $('#ProsesTambahPasien').submit(function(){
        $('#NotifikasiTambahPasien').html('<div class="spinner-border text-secondary" role="status"><span class="sr-only"></span></div>');
        var form = $('#ProsesTambahPasien')[0];
        var data = new FormData(form);
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/ProsesTambahPasien.php',
            data 	    :  data,
            cache       : false,
            processData : false,
            contentType : false,
            enctype     : 'multipart/form-data',
            success     : function(data){
                $('#NotifikasiTambahPasien').html(data);
                var NotifikasiTambahPasienBerhasil=$('#NotifikasiTambahPasienBerhasil').html();
                if(NotifikasiTambahPasienBerhasil=="Success"){
                    //Menutup Modal
                    $('#ModalTambahPasien').modal('hide');
                    //Reset Form Tambah
                    $('#ProsesTambahPasien')[0].reset();
                    //Reset Form Filter Data
                    $('#ProsesBatas')[0].reset();
                    //Menampilkan Data
                    var ProsesBatas = $('#ProsesBatas').serialize();
                    $.ajax({
                        type 	    : 'POST',
                        url 	    : '_Page/Pasien/TabelPasien.php',
                        data 	    :  ProsesBatas,
                        success     : function(data){
                            $('#MenampilkanTabelPasien').html(data);
                        }
                    });
                    //Menampilkan Swal
                    swal("Berhasil!", "Tambah Pasien Berhasil", "success");
                }
            }
        });
    });
    //Modal Detail Pasien
    $('#ModalDetailPasien').on('show.bs.modal', function (e) {
        var id_pasien = $(e.relatedTarget).data('id');
        $('#FormDetailPasien').html("Loading...");
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/FormDetailPasien.php',
            data        : {id_pasien: id_pasien},
            success     : function(data){
                $('#FormDetailPasien').html(data);
            }
        });
    });
    //Modal Edit Pasien
    $('#ModalEditPasien').on('show.bs.modal', function (e) {
        var id_pasien = $(e.relatedTarget).data('id');
        $('#FormEditPasien').html("Loading...");
        $('#NotifikasiEditPasien').html('<small><code class="text-primary">Pastkan data pasien yang anda input sudah benar</code></small>');
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/FormEditPasien.php',
            data        : {id_pasien: id_pasien},
            success     : function(data){
                $('#FormEditPasien').html(data);
            }
        });
    });
    //Ketika Proses Submit Edit Pasien
    $('#ProsesEditPasien').submit(function(){
        $('#NotifikasiEditPasien').html('<div class="spinner-border text-secondary" role="status"><span class="sr-only"></span></div>');
        var form = $('#ProsesEditPasien')[0];
        var data = new FormData(form);
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/ProsesEditPasien.php',
            data 	    :  data,
            cache       : false,
            processData : false,
            contentType : false,
            enctype     : 'multipart/form-data',
            success     : function(data){
                $('#NotifikasiEditPasien').html(data);
                var NotifikasiEditPasienBerhasil=$('#NotifikasiEditPasienBerhasil').html();
                if(NotifikasiEditPasienBerhasil=="Success"){
                    //Menutup Modal
                    $('#ModalEditPasien').modal('hide');
                    //Reset Form Edit
                    $('#ProsesEditPasien')[0].reset();
                    //Menampilkan Data
                    var ProsesBatas = $('#ProsesBatas').serialize();
                    $.ajax({
                        type 	    : 'POST',
                        url 	    : '_Page/Pasien/TabelPasien.php',
                        data 	    :  ProsesBatas,
                        success     : function(data){
                            $('#MenampilkanTabelPasien').html(data);
                        }
                    });
                    //Menampilkan Swal
                    swal("Berhasil!", "Edit Pasien Berhasil", "success");
                }
            }
        });
    });
    //Modal Hapus Pasien
    $('#ModalHapusPasien').on('show.bs.modal', function (e) {
        var id_pasien = $(e.relatedTarget).data('id');
        $('#PutIdPasien').val(id_pasien);
        $('#NotifikasiHapusPasien').html('<small><code class="text-primary">Apakah anda yakin akan menghapus data ini?</code></small>');
    });
    //Ketika Proses Submit Hapus Pasien
    $('#ProsesHapusPasien').submit(function(){
        $('#NotifikasiHapusPasien').html('<div class="spinner-border text-secondary" role="status"><span class="sr-only"></span></div>');
        var form = $('#ProsesHapusPasien')[0];
        var data = new FormData(form);
        $.ajax({
            type 	    : 'POST',
            url 	    : '_Page/Pasien/ProsesHapusPasien.php',
            data 	    :  data,
            cache       : false,
            processData : false,
            contentType : false,
            enctype     : 'multipart/form-data',
            success     : function(data){
                $('#NotifikasiHapusPasien').html(data);
                var NotifikasiHapusPasienBerhasil=$('#NotifikasiHapusPasienBerhasil').html();
                if(NotifikasiHapusPasienBerhasil=="Success"){
                    //Menutup Modal
                    $('#ModalHapusPasien').modal('hide');
                    //Reset Form Hapus
                    $('#ProsesHapusPasien')[0].reset();
                    //Menampilkan Data
                    var ProsesBatas = $('#ProsesBatas').serialize();
                    $.ajax({
                        type 	    : 'POST',
                        url 	    : '_Page/Pasien/TabelPasien.php',
                        data 	    :  ProsesBatas,
                        success     : function(data){
                            $('#MenampilkanTabelPasien').html(data);
                        }
                    });
                    //Menampilkan Swal
                    swal("Berhasil!", "Hapus Pasien Berhasil", "success");
                }
            }
        });
    });
    
  • Buat file dengan nama 'Pasien.php' kemudian ketik / copas script berikut ini:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    <?php
        //Routing Halaman Sub Pasien
        if(empty($_GET['Sub'])){
            include "_Page/Pasien/PasienHome.php";
        }else{
            $Sub=$_GET['Sub'];
            if($Sub=="DetailPasien"){
                include "_Page/Pasien/DetailPasien.php";
            }else{
               
            }
        }
    ?>
    
  • Buat file dengan nama 'PasienHome.php' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    <section class="section dashboard mb-4">
        <div class="row">
            <div class="col-md-3">
                <div class="card">
                    <div class="card-body">
                        <div class="accordion accordion-flush mb-3 border-bottom" id="accordionFlushExample">
                            <div class="accordion-item">
                                <h2 class="accordion-header" id="flush-headingOne"> 
                                    <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-collapse1" aria-expanded="false" aria-controls="flush-collapse1"> 
                                        Filter & Pencarian
                                    </button>
                                </h2>
                                <div id="flush-collapse1" class="accordion-collapse collapse" aria-labelledby="flush-headingOne" data-bs-parent="#accordionFlushExample" style="">
                                    <div class="accordion-body">
                                        <form action="javascript:void(0);" id="ProsesBatas" autocomplete="off">
                                            <input type="hidden" name="page" id="page" value="1">
                                            <div class="row mb-3 mt-3">
                                                <div class="col-md-12 mb-2">
                                                    <label for="batas">Data</label>
                                                    <select name="batas" id="batas" class="form-control">
                                                        <option value="5">5</option>
                                                        <option selected value="10">10</option>
                                                        <option value="25">25</option>
                                                        <option value="50">50</option>
                                                        <option value="100">100</option>
                                                        <option value="250">250</option>
                                                        <option value="500">500</option>
                                                    </select>
                                                </div>
                                            </div>
                                            <div class="row mb-3">
                                                <div class="col-md-12 mb-2">
                                                    <label for="ShortBy">Mode Urutan</label>
                                                    <select name="ShortBy" id="ShortBy" class="form-control">
                                                        <option value="DESC">Z to A</option>
                                                        <option value="ASC">A to Z</option>
                                                    </select>
                                                </div>
                                            </div>
                                            <div class="row mb-3">
                                                <div class="col-md-12 mb-2">
                                                    <label for="OrderBy">Dasar Urutan</label>
                                                    <select name="OrderBy" id="OrderBy" class="form-control">
                                                        <option value="">Pilih</option>
                                                        <option value="nama">Nama</option>
                                                        <option value="nik">NIK</option>
                                                        <option value="no_bpjs">No BPJS</option>
                                                        <option value="kontak">Kontak</option>
                                                        <option value="gender">Gender</option>
                                                        <option value="alamat">Alamat</option>
                                                        <option value="golongan_darah">Golongan Darah</option>
                                                        <option value="status">Status</option>
                                                        <option value="tanggal_daftar">Tanggal Daftar</option>
                                                    </select>
                                                </div>
                                            </div>
                                            <div class="row mb-3">
                                                <div class="col-md-12 mb-2">
                                                    <label for="keyword_by">Dasar Pencarian</label>
                                                    <select name="keyword_by" id="keyword_by" class="form-control">
                                                        <option value="">Pilih</option>
                                                        <option value="nama">Nama</option>
                                                        <option value="nik">NIK</option>
                                                        <option value="no_bpjs">No BPJS</option>
                                                        <option value="kontak">Kontak</option>
                                                        <option value="gender">Gender</option>
                                                        <option value="alamat">Alamat</option>
                                                        <option value="golongan_darah">Golongan Darah</option>
                                                        <option value="status">Status</option>
                                                        <option value="tanggal_daftar">Tanggal Daftar</option>
                                                    </select>
                                                </div>
                                            </div>
                                            <div class="row mb-3">
                                                <div class="col-md-12 mb-2" id="FormKeyword">
                                                    <label for="keyword">Kata Kunci</label>
                                                    <input type="text" name="keyword" id="keyword" class="form-control">
                                                </div>
                                            </div>
                                            <div class="row mb-3">
                                                <div class="col-md-12 mb-2">
                                                    <button type="submit" class="btn btn-md btn-dark btn-block btn-rounded">
                                                        <i class="bi bi-search"></i> Cari
                                                    </button>
                                                </div>
                                            </div>
                                        </form>
                                    </div>
                                </div>
                            </div>
                        </div>
                        <div class="row mb-3">
                            <div class="col-md-12 mb-2">
                                <button type="button" class="btn btn-md btn-primary btn-block btn-rounded" data-bs-toggle="modal" data-bs-target="#ModalTambahPasien">
                                    <i class="bi bi-plus"></i> Tambah Pasien
                                </button>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <div class="col-lg-9" id="MenampilkanTabelPasien">
                
            </div>
        </div>
    </section>
    
  • Buat file dengan nama 'PilihWilayah.php' kemudian ketik / copas script berikut ini:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
        include "../../_Config/Connection.php";
        if(!empty($_POST["kategori"])){
            if(!empty($_POST["KodeWilayah"])){
                $kategori=$_POST["kategori"];
                $KodeWilayah=$_POST["KodeWilayah"];
                echo '<option>Pilih</option>';
                $Qry = mysqli_query($Conn, "SELECT * FROM wilayah WHERE kategori='$kategori' AND kode like '%$KodeWilayah%' ORDER BY nama ASC");
                while ($data = mysqli_fetch_array($Qry)) {
                    $id_wilayah= $data['id_wilayah'];
                    $kode= $data['kode'];
                    $nama= $data['nama'];
                    if(!empty($data['id_wilayah'])){
                        echo '<option value="'.$kode.'">'.$nama.'</option>';
                    }
                }
            }
        }
    ?>
    
  • Buat file dengan nama 'ProsesEditPasien.php' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    <?php
        //Koneksi
        include "../../_Config/Connection.php";
        include "../../_Config/Session.php";
        include "../../_Config/Function.php";
        date_default_timezone_set('Asia/Jakarta');
        $tanggal_daftar=date('Y-m-d H:i:s');
        //Validasi nama tidak boleh kosong
        if(empty($_POST['nama'])){
            echo '<small><code class="text-danger">Nama tidak boleh kosong!</code></small>';
        }else{
            //Validasi gender tidak boleh kosong
            if(empty($_POST['gender'])){
                echo '<small><code class="text-danger">Gender pasien tidak boleh kosong!</code></small>';
            }else{
                //Validasi status tidak boleh kosong
                if(empty($_POST['status'])){
                    echo '<small><code class="text-danger">Status pasien tidak boleh kosong!</code></small>';
                }else{
                    //Validasi id_pasien tidak boleh kosong
                    if(empty($_POST['id_pasien'])){
                        echo '<small><code class="text-danger">ID pasien tidak boleh kosong!</code></small>';
                    }else{
                        //Variabel Lainnya
                        $id_pasien=$_POST['id_pasien'];
                        $nama=$_POST['nama'];
                        $gender=$_POST['gender'];
                        $status=$_POST['status'];
                        //Menangkap Variabel Lainnya yang tidak wajib diisi
                        if(empty($_POST['nik'])){
                            $nik="";
                            $ValidasiNik="";
                        }else{
                            $nik=$_POST['nik'];
                            $NikLama=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'nik');
                            if($NikLama==$nik){
                                $ValidasiNik="";
                            }else{
                                $ValidasiNik=getDataDetail($Conn,'pasien','nik',$nik,'nik');
                            }
                        }
                        if(empty($_POST['no_bpjs'])){
                            $no_bpjs="";
                            $ValidasiNoBpjs="";
                        }else{
                            $no_bpjs=$_POST['no_bpjs'];
                            $NoBpjsLama=getDataDetail($Conn,'pasien','id_pasien',$id_pasien,'no_bpjs');
                            if($NoBpjsLama==$no_bpjs){
                                $ValidasiNoBpjs="";
                            }else{
                                $ValidasiNoBpjs=getDataDetail($Conn,'pasien','no_bpjs',$no_bpjs,'no_bpjs');
                            }
                            
                        }
                        if(empty($_POST['kontak'])){
                            $kontak="";
                        }else{
                            $kontak=$_POST['kontak'];
                        }
                        if(empty($_POST['tempat_lahir'])){
                            $tempat_lahir="";
                        }else{
                            $tempat_lahir=$_POST['tempat_lahir'];
                        }
                        if(empty($_POST['tanggal_lahir'])){
                            $tanggal_lahir="";
                        }else{
                            $tanggal_lahir=$_POST['tanggal_lahir'];
                        }
                        if(empty($_POST['propinsi'])){
                            $provinsi="";
                        }else{
                            $provinsi=$_POST['propinsi'];
                        }
                        if(empty($_POST['kabupaten'])){
                            $kabupaten="";
                        }else{
                            $kabupaten=$_POST['kabupaten'];
                        }
                        if(empty($_POST['kecamatan'])){
                            $kecamatan="";
                        }else{
                            $kecamatan=$_POST['kecamatan'];
                        }
                        if(empty($_POST['desa'])){
                            $desa="";
                        }else{
                            $desa=$_POST['desa'];
                        }
                        if(empty($_POST['alamat'])){
                            $alamat="";
                        }else{
                            $alamat=$_POST['alamat'];
                        }
                        if(empty($_POST['golongan_darah'])){
                            $golongan_darah="";
                        }else{
                            $golongan_darah=$_POST['golongan_darah'];
                        }
                        //Validasi Nik Duplikat
                        if(!empty($ValidasiNik)){
                            echo '<small><code class="text-danger">NIK yang anda input sudah terdaftar!</code></small>';
                        }else{
                            //Validasi no_bpjs Duplikat
                            if(!empty($ValidasiNoBpjs)){
                                echo '<small><code class="text-danger">No. BPJS yang anda input sudah terdaftar!</code></small>';
                            }else{
                                //Simpan Data
                                $UpdatePasien = mysqli_query($Conn,"UPDATE pasien SET 
                                    nama='$nama',
                                    nik='$nik',
                                    no_bpjs='$no_bpjs',
                                    kontak='$kontak',
                                    tempat_lahir='$tempat_lahir',
                                    tanggal_lahir='$tanggal_lahir',
                                    gender='$gender',
                                    provinsi='$provinsi',
                                    kabupaten='$kabupaten',
                                    kecamatan='$kecamatan',
                                    desa='$desa',
                                    alamat='$alamat',
                                    golongan_darah='$golongan_darah',
                                    status='$status',
                                    tanggal_daftar='$tanggal_daftar'
                                WHERE id_pasien='$id_pasien'") or die(mysqli_error($Conn)); 
                                if($UpdatePasien){
                                    echo '<small class="text-success" id="NotifikasiEditPasienBerhasil">Success</small>';
                                }else{
                                    echo '<small class="text-danger">Terjadi kesalahan pada saat menyimpan data</small>';
                                }
                            }
                        }
                    }
                }
            }
        }
    ?>
    
  • Buat file dengan nama 'ProsesHapusPasien.php' kemudian ketik / copas script berikut ini:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    <?php
        //Connection
        include "../../_Config/Connection.php";
        if(empty($_POST['id_pasien'])){
            echo '<span class="text-danger">ID Pasien tidak dapat ditangkap oleh sistem</span>';
        }else{
            $id_pasien=$_POST['id_pasien'];
            //Proses hapus data
            $HapusPasien = mysqli_query($Conn, "DELETE FROM pasien WHERE id_pasien='$id_pasien'") or die(mysqli_error($Conn));
            if ($HapusPasien) {
                echo '<span class="text-success" id="NotifikasiHapusPasienBerhasil">Success</span>';
            }else{
                echo '<span class="text-danger">Hapus Data Gagal</span>';
            }
        }
    ?>
    
  • Buat file dengan nama 'ProsesTambahPasien.php' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    <?php
        //Koneksi
        include "../../_Config/Connection.php";
        include "../../_Config/Session.php";
        include "../../_Config/Function.php";
        date_default_timezone_set('Asia/Jakarta');
        $tanggal_daftar=date('Y-m-d H:i:s');
        //Validasi nama tidak boleh kosong
        if(empty($_POST['nama'])){
            echo '<small><code class="text-danger">Nama tidak boleh kosong!</code></small>';
        }else{
            //Validasi gender tidak boleh kosong
            if(empty($_POST['gender'])){
                echo '<small><code class="text-danger">Gender pasien tidak boleh kosong!</code></small>';
            }else{
                //Validasi status tidak boleh kosong
                if(empty($_POST['status'])){
                    echo '<small><code class="text-danger">Status pasien tidak boleh kosong!</code></small>';
                }else{
                    //Variabel Lainnya
                    $nama=$_POST['nama'];
                    $gender=$_POST['gender'];
                    $status=$_POST['status'];
                    //Menangkap Variabel Lainnya yang tidak wajib diisi
                    if(empty($_POST['nik'])){
                        $nik="";
                        $ValidasiNik="";
                    }else{
                        $nik=$_POST['nik'];
                        $ValidasiNik=getDataDetail($Conn,'pasien','nik',$nik,'nik');
                    }
                    if(empty($_POST['no_bpjs'])){
                        $no_bpjs="";
                        $ValidasiNoBpjs="";
                    }else{
                        $no_bpjs=$_POST['no_bpjs'];
                        $ValidasiNoBpjs=getDataDetail($Conn,'pasien','no_bpjs',$no_bpjs,'no_bpjs');
                    }
                    if(empty($_POST['kontak'])){
                        $kontak="";
                    }else{
                        $kontak=$_POST['kontak'];
                    }
                    if(empty($_POST['tempat_lahir'])){
                        $tempat_lahir="";
                    }else{
                        $tempat_lahir=$_POST['tempat_lahir'];
                    }
                    if(empty($_POST['tanggal_lahir'])){
                        $tanggal_lahir="";
                    }else{
                        $tanggal_lahir=$_POST['tanggal_lahir'];
                    }
                    if(empty($_POST['propinsi'])){
                        $provinsi="";
                    }else{
                        $provinsi=$_POST['propinsi'];
                    }
                    if(empty($_POST['kabupaten'])){
                        $kabupaten="";
                    }else{
                        $kabupaten=$_POST['kabupaten'];
                    }
                    if(empty($_POST['kecamatan'])){
                        $kecamatan="";
                    }else{
                        $kecamatan=$_POST['kecamatan'];
                    }
                    if(empty($_POST['desa'])){
                        $desa="";
                    }else{
                        $desa=$_POST['desa'];
                    }
                    if(empty($_POST['alamat'])){
                        $alamat="";
                    }else{
                        $alamat=$_POST['alamat'];
                    }
                    if(empty($_POST['golongan_darah'])){
                        $golongan_darah="";
                    }else{
                        $golongan_darah=$_POST['golongan_darah'];
                    }
                    //Validasi Nik Duplikat
                    if(!empty($ValidasiNik)){
                        echo '<small><code class="text-danger">NIK yang anda input sudah terdaftar!</code></small>';
                    }else{
                        //Validasi no_bpjs Duplikat
                        if(!empty($ValidasiNoBpjs)){
                            echo '<small><code class="text-danger">No. BPJS yang anda input sudah terdaftar!</code></small>';
                        }else{
                            //Simpan Data
                            $entry="INSERT INTO pasien (
                                nama,
                                nik,
                                no_bpjs,
                                kontak,
                                tempat_lahir,
                                tanggal_lahir,
                                gender,
                                provinsi,
                                kabupaten,
                                kecamatan,
                                desa,
                                alamat,
                                golongan_darah,
                                status,
                                tanggal_daftar
                            ) VALUES (
                                '$nama',
                                '$nik',
                                '$no_bpjs',
                                '$kontak',
                                '$tempat_lahir',
                                '$tanggal_lahir',
                                '$gender',
                                '$provinsi',
                                '$kabupaten',
                                '$kecamatan',
                                '$desa',
                                '$alamat',
                                '$golongan_darah',
                                '$status',
                                '$tanggal_daftar'
                            )";
                            $Input=mysqli_query($Conn, $entry);
                            if($Input){
                                echo '<small class="text-success" id="NotifikasiTambahPasienBerhasil">Success</small>';
                            }else{
                                echo '<small class="text-danger">Terjadi kesalahan pada saat menyimpan data</small>';
                            }
                        }
                    }
                }
            }
        }
    ?>
    
  • Buat file dengan nama 'TabelPasien.php' kemudian ketik / copas script berikut ini:
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
     63
     64
     65
     66
     67
     68
     69
     70
     71
     72
     73
     74
     75
     76
     77
     78
     79
     80
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
     96
     97
     98
     99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    <?php
        //koneksi dan session
        ini_set("display_errors","off");
        include "../../_Config/Connection.php";
        include "../../_Config/Function.php";
        date_default_timezone_set("Asia/Jakarta");
        //Keyword_by
        if(!empty($_POST['keyword_by'])){
            $keyword_by=$_POST['keyword_by'];
        }else{
            $keyword_by="";
        }
        //keyword
        if(!empty($_POST['keyword'])){
            $keyword=$_POST['keyword'];
        }else{
            $keyword="";
        }
        //batas
        if(!empty($_POST['batas'])){
            $batas=$_POST['batas'];
        }else{
            $batas="10";
        }
        //ShortBy
        if(!empty($_POST['ShortBy'])){
            $ShortBy=$_POST['ShortBy'];
        }else{
            $ShortBy="DESC";
        }
        //OrderBy
        if(!empty($_POST['OrderBy'])){
            $OrderBy=$_POST['OrderBy'];
        }else{
            $OrderBy="id_pasien";
        }
        //Atur Page
        if(!empty($_POST['page'])){
            $page=$_POST['page'];
            $posisi = ( $page - 1 ) * $batas;
        }else{
            $page="1";
            $posisi = 0;
        }
        if(empty($keyword_by)){
            if(empty($keyword)){
                $jml_data = mysqli_num_rows(mysqli_query($Conn, "SELECT*FROM pasien"));
            }else{
                $jml_data = mysqli_num_rows(mysqli_query($Conn, "SELECT*FROM pasien WHERE nama like '%$keyword%' OR nik like '%$keyword%' OR no_bpjs like '%$keyword%' OR kontak like '%$keyword%' OR gender like '%$keyword%' OR alamat like '%$keyword%' OR golongan_darah like '%$keyword%' OR status like '%$keyword%'"));
            }
        }else{
            if(empty($keyword)){
                $jml_data = mysqli_num_rows(mysqli_query($Conn, "SELECT*FROM pasien"));
            }else{
                $jml_data = mysqli_num_rows(mysqli_query($Conn, "SELECT*FROM pasien WHERE $keyword_by like '%$keyword%'"));
            }
        }
    ?>
    <script>
        //ketika klik next
        $('#NextPage').click(function() {
            var valueNext=$('#NextPage').val();
            var batas="<?php echo "$batas"; ?>";
            var keyword="<?php echo "$keyword"; ?>";
            var keyword_by="<?php echo "$keyword_by"; ?>";
            var OrderBy="<?php echo "$OrderBy"; ?>";
            var ShortBy="<?php echo "$ShortBy"; ?>";
            $.ajax({
                url     : "_Page/Pasien/TabelPasien.php",
                method  : "POST",
                data 	:  { page: valueNext, batas: batas, keyword: keyword, keyword_by: keyword_by, OrderBy: OrderBy, ShortBy: ShortBy },
                success: function (data) {
                    $('#MenampilkanTabelPasien').html(data);
                    $('#PutPage').val(valueNext);
                }
            })
        });
        //Ketika klik Previous
        $('#PrevPage').click(function() {
            var ValuePrev = $('#PrevPage').val();
            var batas="<?php echo "$batas"; ?>";
            var keyword="<?php echo "$keyword"; ?>";
            var keyword_by="<?php echo "$keyword_by"; ?>";
            var OrderBy="<?php echo "$OrderBy"; ?>";
            var ShortBy="<?php echo "$ShortBy"; ?>";
            $.ajax({
                url     : "_Page/Pasien/TabelPasien.php",
                method  : "POST",
                data 	:  { page: ValuePrev,batas: batas, keyword: keyword, keyword_by: keyword_by, OrderBy: OrderBy, ShortBy: ShortBy },
                success : function (data) {
                    $('#MenampilkanTabelPasien').html(data);
                    $('#PutPage').val(ValuePrev);
                }
            })
        });
        <?php 
            $JmlHalaman =ceil($jml_data/$batas); 
            $a=1;
            $b=$JmlHalaman;
            for ( $i =$a; $i<=$b; $i++ ){
        ?>
            //ketika klik page number
            $('#PageNumber<?php echo $i;?>').click(function() {
                var PageNumber = $('#PageNumber<?php echo $i;?>').val();
                var batas="<?php echo "$batas"; ?>";
                var keyword="<?php echo "$keyword"; ?>";
                var keyword_by="<?php echo "$keyword_by"; ?>";
                var OrderBy="<?php echo "$OrderBy"; ?>";
                var ShortBy="<?php echo "$ShortBy"; ?>";
                $.ajax({
                    url     : "_Page/Pasien/TabelPasien.php",
                    method  : "POST",
                    data 	:  { page: PageNumber, batas: batas, keyword: keyword, keyword_by: keyword_by, OrderBy: OrderBy, ShortBy: ShortBy },
                    success: function (data) {
                        $('#MenampilkanTabelPasien').html(data);
                        $('#PutPage').val(PageNumber);
                    }
                })
            });
        <?php } ?>
    </script>
    <?php
        $no = 1+$posisi;
        if(empty($jml_data)){
            echo '<div class="row">';
            echo '  <div class="col-md-12">';
            echo '      <div class="card">';
            echo '          <div class="card-body text-center text-danger">';
            echo '              Tidak Ada Pasien Yang Ditampilkan';
            echo '          </div>';
            echo '      </div>';
            echo '  </div>';
            echo '</div>';
        }else{
            echo '<div class="row">';
                //KONDISI PENGATURAN MASING FILTER
                if(empty($keyword_by)){
                    if(empty($keyword)){
                        $query = mysqli_query($Conn, "SELECT*FROM pasien ORDER BY $OrderBy $ShortBy LIMIT $posisi, $batas");
                    }else{
                        $query = mysqli_query($Conn, "SELECT*FROM pasien WHERE nama like '%$keyword%' OR nik like '%$keyword%' OR no_bpjs like '%$keyword%' OR kontak like '%$keyword%' OR gender like '%$keyword%' OR alamat like '%$keyword%' OR golongan_darah like '%$keyword%' OR status like '%$keyword%' ORDER BY $OrderBy $ShortBy LIMIT $posisi, $batas");
                    }
                }else{
                    if(empty($keyword)){
                        $query = mysqli_query($Conn, "SELECT*FROM pasien ORDER BY $OrderBy $ShortBy LIMIT $posisi, $batas");
                    }else{
                        $query = mysqli_query($Conn, "SELECT*FROM pasien WHERE $keyword_by like '%$keyword%' ORDER BY $OrderBy $ShortBy LIMIT $posisi, $batas");
                    }
                }
                while ($data = mysqli_fetch_array($query)) {
                    $id_pasien= $data['id_pasien'];
                    $nama= $data['nama'];
                    $nik= $data['nik'];
                    $no_bpjs= $data['no_bpjs'];
                    $kontak= $data['kontak'];
                    $tempat_lahir= $data['tempat_lahir'];
                    $tanggal_lahir= $data['tanggal_lahir'];
                    $gender= $data['gender'];
                    $provinsi= $data['provinsi'];
                    $kabupaten= $data['kabupaten'];
                    $kecamatan= $data['kecamatan'];
                    $desa= $data['desa'];
                    $golongan_darah= $data['golongan_darah'];
                    $status= $data['status'];
                    $tanggal_daftar= $data['tanggal_daftar'];
                    $TanggalDaftar=FormatDateTime('d/m/Y H:i:s',$tanggal_daftar);
    ?>
            <div class="col-md-6 mb-2">
                <div class="card">
                    <div class="card-header">
                        <a href="javascript:void(0);" data-bs-toggle="modal" data-bs-target="#ModalDetailPasien" data-id="<?php echo "$id_pasien";?>">
                            <b><?php echo "$no. $nama";?></b>
                        </a>
                        <div class="filter">
                            <a class="icon" href="#" data-bs-toggle="dropdown" aria-expanded="false"><i class="bi bi-three-dots"></i></a>
                            <ul class="dropdown-menu dropdown-menu-end dropdown-menu-arrow" style="">
                                <li class="dropdown-header text-start">
                                    <h6>Option</h6>
                                </li>
                                <li>
                                    <a href="javascript:void(0);" class="dropdown-item"  data-bs-toggle="modal" data-bs-target="#ModalDetailPasien" data-id="<?php echo "$id_pasien"; ?>">
                                        <i class="bi bi-info-circle"></i> Detail
                                    </a> 
                                </li>
                                <li>
                                    <a href="javascript:void(0);" class="dropdown-item"  data-bs-toggle="modal" data-bs-target="#ModalEditPasien" data-id="<?php echo "$id_pasien"; ?>">
                                        <i class="bi bi-pencil-square"></i> Edit
                                    </a> 
                                </li>
                                <li>
                                    <a href="javascript:void(0);" class="dropdown-item" data-bs-toggle="modal" data-bs-target="#ModalHapusPasien" data-id="<?php echo "$id_pasien"; ?>">
                                        <i class="bi bi-trash"></i> Hapus
                                    </a>
                                </li>
                            </ul>
                        </div>
                    </div>
                    <div class="card-body">
                        <div class="row">
                            <div class="col-md-12">
                                <small>
                                    <i class="bi bi-info-circle"></i> No.RM: <code class="text-secondary"><?php echo "$id_pasien"; ?></code><br>
                                    <i class="bi bi-person-badge"></i> NIK: <code class="text-secondary"><?php echo "$nik"; ?></code><br>
                                    <i class="bi bi-calendar"></i> Tgl: <code class="text-secondary"><?php echo "$TanggalDaftar"; ?></code><br>
                                </small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
    <?php
                $no++; 
            } 
            echo '</div>';
        } 
    ?>
    <div class="row">
        <div class="col-md-12 text-center">
            <div class="btn-group shadow-0" role="group" aria-label="Basic example">
                <?php
                    //Mengatur Halaman
                    $JmlHalaman = ceil($jml_data/$batas); 
                    $JmlHalaman_real = ceil($jml_data/$batas); 
                    $prev=$page-1;
                    $next=$page+1;
                    if($next>$JmlHalaman){
                        $next=$page;
                    }else{
                        $next=$page+1;
                    }
                    if($prev<"1"){
                        $prev="1";
                    }else{
                        $prev=$page-1;
                    }
                ?>
                <button class="btn btn-sm btn-outline-info" id="PrevPage" value="<?php echo $prev;?>">
                    <span aria-hidden="true">«</span>
                </button>
                <?php 
                    //Navigasi nomor
                    if($JmlHalaman>3){
                        if($page>=2){
                            $a=$page-1;
                            $b=$page+1;
                            if($JmlHalaman<=$b){
                                $a=$page-1;
                                $b=$JmlHalaman;
                            }
                        }else{
                            $a=1;
                            $b=$page+1;
                            if($JmlHalaman<=$b){
                                $a=1;
                                $b=$JmlHalaman;
                            }
                        }
                    }else{
                        $a=1;
                        $b=$JmlHalaman;
                    }
                    for ( $i =$a; $i<=$b; $i++ ){
                        if($page=="$i"){
                            echo '<button class="btn btn-sm btn-info" id="PageNumber'.$i.'" value="'.$i.'"><span aria-hidden="true">'.$i.'</span></button>';
                        }else{
                            echo '<button class="btn btn-sm btn-outline-info" id="PageNumber'.$i.'" value="'.$i.'"><span aria-hidden="true">'.$i.'</span></button>';
                        }
                    }
                ?>
                <button class="btn btn-sm btn-outline-info" id="NextPage" value="<?php echo $next;?>">
                    <span aria-hidden="true">»</span>
                </button>
            </div>
        </div>
    </div>
    


Setelah project terupdate sesuai langkah-langkah di atas, sekarang silahkan coba jalankan programnya. Lebih jelas, bisa juga dilihat pada vidio berikut ini:


Untuk yang masih kesulitan silahkan download full scriptnya disini.


Download Full Project (Via Git Hub)

Blum Blum Shub (BBS) merupakan algoritma komputasi yang digunakan untuk menciptakan karakter acak sehingga menghasilkan karakter yang sulit diprediksi. Perkembangan teknologi komputer yang pesat pada saat ini, telah mendorong para ahli dalam bidang kriptografi untuk menciptakan sebuah algoritma yang dapat digunakan dengan sederhana namun tetap memiliki sifat pengacakan yang kuat. Bidang tersebut erat kaitannya dengan usaha perlindungan data dan informasi, sehingga kemajuan teknologi tersebut terjamin keamanannya. Selain kriptografi, pada saat ini algoritma pengacakan juga dapat diterapkan dalam bidang lain seperti pengujian statistik, pertandingan atau pengundian, pengujian perangkat lunak dan lain-lain.


Pengertian Algoritma Blum Blum Shub (BBS)

Algoritma Blum Blum Shub (BBS) adalah suatu algoritma yang diterapkan pada komputasional yang di rancang dengan tujuan untuk menghasilkan suatu urutan nilai yang tidak dapat di tebak polanya dengan mudah, sehingga urutan nilai tersebut dapat di anggap sebagai suatu keadaan acak (random). Algoritma Blum Blum Shub (BBS) merupakan cryptographically psedorandom number generator (CSPRNG) yang berarti bahwa deret bilangan yang dihasilkannya sebenarnya dihasilkan oleh algoritma deterministik, namun sulit untuk diprediksi atau ditebak tanpa pengetahuan tentang kunci rahasia yang digunakan.


Salah satu manfaat nyata dari penggunaan algoritma tersebut adalah untuk menciptakan karakter acak yang kuat sehingga sulit ditebak. Hal ini berkaitan dengan kriptografi modern, dimana cukup banyak diperlukan pembangkit bilangan acak sebagai salah satu komponen utama dalam meningkatkan keamanan pengiriman informasi.


Secara teoritis tidak ada prosedur komputasi yang mampu menghasilkan deret bilangan acak yang benar-benar sempurna (truly random). Oleh sebab itu, dalam tekhnologi komputerisasi saat ini, setiap karakter acak yang dihasilkan merupakan hasil dari proses pseudo-random number generator (PRNG). Pengertian dari pseudo-random number generator (PRNG) itu sendiri adalah sebuah proses pengacakan menggunakan formula matematis atau deterministik yang diawali oleh suatu kondisi yang disebut dengan seed. Selain itu pseudo-random number generator (PRNG) juga memiliki periodik yang berarti memiliki panjang siklus, yang ketika dalam kondisi tertentu dan periode tertentu maka pengacakan mungkin dapat terulang secara identik.


Kelemahan Blum Blum Shub (BBS)

Algoritma Blum Blum Shub (BBS) tidak cocok untuk diterapkan pada keamanan kriptografi tingkat pertama yang mengandalkan sifat acak atas bilangan yang dihasilkan. Karena Algoritma Blum Blum Shub (BBS) masih mungkin dapat diprediksi dan dapat berulang dalam pola periode tertentu. Algoritma Blum Blum Shub (BBS) juga tidak cocok untuk penguncian informasi secara langsung. Contoh dari hal ini misalnya menggunakan Algoritma Blum Blum Shub (BBS) untuk menciptakan password karena hal ini beresiko untuk dapat ditebak melalui proses matematis tertentu.


Kelebihan Blum Blum Shub (BBS)

Algoritma Blum Blum Shub (BBS) dibuat pada tahun 1986 oleh Lenore Blum, Manuel Blum dan Michael Shub. Blum Blum Shub (BBS) memiliki suatu kelebihan dibandingkan metode pengacakan lainnya, yaitu terletak pada kesederhanaannya dalam melakukan pengacakan. Dengan kesederhanaan proses tersebut maka sangat cocok apabila diterapkan pada proses kryptografi yang melibatkan file besar jika dibandingkan dengan algoritma lainnya.


Algoritma Blum Blum Shub (BBS) cocok untuk diterapkan pada kebutuhan pengacakan rendah yang memperbolehkan kemungkinan penggunaan ulang reuseable. Hal ini disebabkan karena Algoritma Blum Blum Shub (BBS) memungkinkan diatur periodenya sehingga dapat menciptakan pengacakan ulang secara identik. Kelebihan ini sekaligus memanfaatkan kekurangan dari Algoritma Blum Blum Shub (BBS). Contoh penggunaan semacam ini misalnya kita akan mengacak sebuah kumpulan angka urutan soal yang jumlahnya terbatas, atau melakukan pengundian pada range yang tidak lengkap, juga ketika ingin melakukan pengacakan dalam batas-batas tertentu.


Penerapan Algoritma Blum Blum Shub (BBS)

Algoritma Blum Blum Shub (BBS) dapat dimanfaatkan oleh beberapa bidang yang menggunakan teknologi komputer serta mengandalkan kemampuan pengacakan. Algoritma Blum Blum Shub (BBS) dapat diterapkan sesuai karakteristik pseudo-random number generator (PRNG) yang dimilikinya sehingga lebih efektif dan efisien. Berikut ini adalah beberapa contoh penerapan Algoritma Blum Blum Shub (BBS):

  • Penerapan Algoritma Blum Blum Shub (BBS) dalam bidang penelitian untuk pengujian statistik. Dalam beberapa proses pengujian statistik membutuhan kondisi dimana objek memiliki validitas yang tinggi atas informasinya ketika dilakukan pengujian dalam kondisi yang tidak dapat diduga. Penerapan Algoritma Blum Blum Shub (BBS) bisa digunakan untuk menentukan sample penelitian, pengujian validitas data atau pengujian persamaan yang menjawab kesesuaian antara interpertasi statustik dengan kondisi sebenarnya.
  • Penerapan Algoritma Blum Blum Shub (BBS) dalam simulasi komputer. Dalam proses simulai komputer diperlukan suatu kondisi yang kompleks dengan tingkatan yang dpat diukur. Dengan menggunakan Algoritma Blum Blum Shub (BBS) maka proses simulasi dapat terdeskripsi melalui tingkatan pengacakan yang dihasilkan.
  • Permainan dan Hiburan. Dalam game komputasi agar konten tidak dapat diprediksi oleh pemain maka dalam kondisi tertentu menggunakan pengacakan untuk menghasilkan tantangan yang menarik. Proses pengcakan yang dibutuhkan adalah generator yang bisa menyesuaikan dengan kondisi manakala sumber daya yang digunakan pada permaianan yang diciptakan memiliki batasan tertentu. Misalnya dalam proses pengacakan nomor soal, pengacakan kondisi permaianan atau pengacakan ID pemain untuk memperoleh kisaran angka acak dalam rang tertentu.


Penutup

Kelemahan pada Algoritma Blum Blum Shub (BBS) sebetulnya dapat ditutupi dengan menggunakan kondisi awal yang berbeda-beda sehingga pengacakan yang dihasilkan tidak dapat di reverse. Dalam penerapannya untuk bidang keamanan data informasi dapat diterapkan untuk penciptaan pengacakan blok logika sehingga informasi yang ada didalamnya tidak dapat diprediksi dengan mudah karena menghasilkan permutasi yang tidak terbatas. Algoritma Blum Blum Shub (BBS) cocok untuk diterapkan pada kebutuhan pengacakan rendah yang memperbolehkan kemungkinan penggunaan ulang reuseable. Dalam konteks pemahaman ini, pengacakan bisa digunakan untuk memberikan faktor bias pada objek yang memiliki kemampuan prediksi yang cukup tinggi semisalnya kecerdasan buatan (AI) sehingga informasi yang diserap tidak dapat diterjemahkan dengan mudah.


Penciptaan bilangan acak membutuhkan batasan tertentu, pada siklus tertentu dengan jarak nilai tertentu pula agar mudah diimplementasikan dan diterapkan dalam kehidupan sehari-hari. Walaupun Algoritma Blum Blum Shub (BBS) tidak sepenuhnya acak, namun dapat direkayasa dengan beberapa cara sehingga menghasilkan permutasi yang tidak terbatas. Namun dampaknya, penggunaan semacam itu harus menyertakan penghentian algoritma secara manual ketika kondisi pengacakan sudah mencapai tujuan sesuai batasan yang diinginkan.


Sumber Pustaka

  • Munir , Rinaldi. 2011. Algoritma dan Pemrograman. Bandung : Informatika
  • Rizal Adi Saputra 2021, Implementasi Metode Blum Blum Shub (BBS) Untuk Pengacakan soal Kuis Pada Aplikasi Media Pembelajaran Ipa Tingkat Sekolah Dasar Kelas 6 Berbasis Mobile
  • Wibowo, M. A. (2015). Pengacakan Soal Menggunakan Metode Blum Blum Shub (BBS) Pada Aplikasi Pembelajaran Matematika Berbasis DekstoP. STMIK AKAKOM Yogyakarta.https://eprints.akakom.ac.id/3