• Tidak ada hasil yang ditemukan

BAB V PENUTUP

5.2 Saran

5.2 Saran

Berdasarkan masalah diatas setelah program diimplementasikan berikut saran-saran yang diberikan :

1. Sistem ini di perlukan perluasan jaringan untuk mempercepat dan mempermudah calon siswa dalam mengaksesnya.

72

DAFTAR PUSTAKA

[1] A. Susanto, 2013, Sistem Informasi Akuntansi, Bandung: Lingga Jaya. [2] Steinbart, B. Marshall, Romney och P. John, 2015, Sistem Informasi

Akuntansi Edisi 13, Jakarta: Salemba Empat.

[3] Mulyadi, 2016, Sistem Informasi Akuntansi, jakarta: Salemba Empat

[4] Hartono, 2013, Sistem Informasi Manajemen Berbasis Komputer, jakarta: Rineka Cipta.

[5] A. Kadir, 2014, Pengenalan Sistem Informasi Edisi Revisi, Yogyakarta: Andi.

[6] Supono och P. Virdiandry, 2016, Pemrograman Web dengan Menggunakan PHP dan Framework Codeigniter, Supono.

[7] A. Supriyanto, 2005, Pengantar teknologi Informasi Edisi Pertama, Jakarta: Salemba Empat.

[8] A. Rosa och M. Shalahuddin, 2014, Rekayasa Perangkat Lunak Struktur dan Berorientasi Objek, Bandung: Informatika.

[9] J. K. Kawistara och P. Hidayatullah, 2015, Pemrograman Web, Bandung: Informatika.

[10] T. e. a. Suryana, 2014, Aplikasi Internet Menggunakan HTML, CSS, & JavaScript, Jakarta: PT Elex Media Komputindo.

[11] Hidayatullah, Priyanto och K. K. Jauhari, 2017, Pemrograman WEB, Bandung: Informatika Bandung.

[12] Sibero och F. Alexander, 2014, Web Programming Power Pack, Yogyakarta: Mediakom.

[13] Pressman, 2015, Rekayasa Perangkat Lunak: Praktisi buku I, Yogyakarta: Andi,

[14] i. Supriyanto., 2005, Pengantar Teknologi Informasi Edisi Pertama, Jakarta: Salemba Empat.

LAMPIRAN

Lampiran 1 Biodata Peneliti

1. Data Pribadi

• Nama : Fuad Hariri

• Tempat, Tgl Lahir : Bekasi, 12 Juni 1995 • Jenis Kelamin : Laki-laki

• Kewarganegaraan : Indonesia

• Status : Belum kawin

• Alamat Sekarang : Kp. Cibuntu Rt.01 Rw.06 Kec.cibitung Kab.Bekasi

• Telephone : 087741458706

• Email : fuadhariri0@gmail.com

2. Pendidikan

• SD Negeri Cibuntu 01 2001 – 2007

• SMP Negeri 2 Tambun Selatan 2007 – 2010

• SMK Bina Prestasi 2010 – 2013

Bekasi, 29 Agustus 2019

74

LAMPIRAN

Lampiran 2 Kode Program Sistem Berbasis Web Di SMK Bina Prestasi

1. Login.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access

allowed');

class Login extends CI_Controller{ function __construct(){

parent::__construct();

date_default_timezone_set('Asia/Jakarta'); $this->expiration = 120;

}

function index($notice = FALSE, $url = FALSE){ if(is_login()) redirect ('a/home/index');

////////////////////// START CAPCAY //////////////////////

$this->load->helper('captcha'); $vals = array(

'font_path' => './psb-content/fonts/texb.ttf', 'img_path' => './psb-content/captcha/',

'img_url' => base_url().'psb-content/captcha/', 'img_width' => 145,

'img_height' =>30,

'expiration' => $this->expiration

);

$cap = create_captcha($vals); $data = array(

'captcha_time' => $cap['time'],

'ip_address' => $this->input->ip_address(), 'word' => strtolower($cap['word'])

);

$query = $this->db->insert_string('captcha', $data); $this->db->query($query);

$this->db->query("DELETE FROM captcha WHERE captcha_time <

".(time()-($this->expiration))); //hapus capcay expired

////////////////////// END CAPCAY //////////////////////

$data['url'] = array('a', __CLASS__, __FUNCTION__); $data['judul'] = 'Halaman Login';

$data['notice'] = array('', '');

$data['post'] = 'a/login/index/'.$notice.'/'.$url;

$this->form_validation->set_rules('data_username', 'Username',

'trim|required|max_length[128]|alpha_dash|xss_clean');

$this->form_validation->set_rules('data_password', 'Password',

'trim|required|min_length[5]|max_length[128]|xss_clean');

$cek_capcay = $this->form_validation->set_rules('data_capcay',

'Captcha',

'trim|required|max_length[8]|xss_clean|callback_cek_capcay'); if($this->form_validation->run()){

$user_username = $this->input->post('data_username', TRUE); $user_password = md5(sha1($this->input

->post('data_password', TRUE)));

if(login($user_username, $user_password) AND $cek_capcay){ if(strlen(decode($url)) > 0) redirect(decode($url)); else redirect('a/home/index');

}

else {$data['notice'] = array('red', 'ERROR : Data tidak lengkap');}

} else{

if(css_notice(validation_errors())) $data['notice'] =

array('red', 'ERROR : Data tidak lengkap!');

elseif($notice == 'logouttrue') $data['notice'] =

array('yellow', 'NOTICE : Sekarang anda keluar!');

elseif($notice == 'loginfalse') $data['notice'] =

array('yellow', 'NOTICE : Saat ini anda tidak login!');

elseif($notice == 'email') $data['notice'] = array('green',

'SUCCESS : Silahkan cek email untuk mereset password!'); elseif($notice == 'resettrue') $data['notice'] =

76

login!'); }

$this->load->view(view('login', 'view_login'), $data); }

function cek_capcay(){

$user_expiration = time()-($this->expiration);

$user_capcay = strtolower($this->input->post('data_capcay',

TRUE));

if (capcay($user_expiration, $user_capcay)) { return TRUE;

} else{

$this->form_validation->set_message('cek_capcay', 'SALAH'); return FALSE;

} }

function logout(){

if(!is_login()) redirect('a/login/index/loginfalse'); if(logout()) redirect('a/login/index/logouttrue'); }

function forgot($notice = FALSE){

if(is_login()) redirect ('a/home/index'); $this->load->model('a/model_login');

$data['url'] = array('a', __CLASS__, __FUNCTION__); $data['judul'] = 'Lupa Password';

$data['notice'] = array('', ''); $data['post'] = 'a/login/forgot/';

$this->form_validation->set_rules('data_username_email', ' ',

'trim|required|max_length[128]|alpha_dash|xss_clean'); if($this->form_validation->run()){

$user_username_email = $this->input ->post('data_username_email', TRUE);

$query = $this->model_login ->forgot(array($user_username_email)); if($query->num_rows() == 1){ $query = $query->row_array();

$reset_users = $query['user_id']; $reset_link =

encode(encode(sha1(encode(md5(encode($query['user_id']. '-'.time()))))));

$reset_input = date('Y-m-d H:i:s', time()); //hari ini

$reset_expired = date('Y-m-d H:i:s', time() + (1 * 24 *

60 * 60)); //1hari

$add_reset_pass = $this->model_login

->add_reset_pass(array($reset_users, $reset_link, $reset_input,

$reset_expired));

// kirim email

$this->load->library('email');

$this->email->from(setting('sekolah_email'),

setting('sekolah_nama'));

$this->email->to($query['user_email']); $this->email->subject(setting('web_judul')); $this->email->message('Reset Password = '.base_url().'a/login/reset/'.$reset_link);

$this->email->send(); //echo $this->email->print_debugger();

redirect('a/login/index/email'); }

else $data['notice'] = array('yellow', 'NOTICE : Username tidak ditemukan!');

} else{

if(css_notice(validation_errors())) $data['notice'] =

array('red', 'ERROR : Data tidak lengkap!'); }

$this->load->view(view('login', 'view_forgot'), $data); }

function reset($id = FALSE){

if(is_login()) redirect ('a/home/index'); $this->load->model('a/model_login');

$query = $this->model_login->cek_reset_pass(array($id)); $query = $query->row_array();

78

if(count($query) == 0) show_404(); else{

$reset_input = strtotime($query['reset_input']); $reset_now = time();

$reset_expired = strtotime($query['reset_expired']); if($reset_input <= $reset_now AND $reset_now <=

$reset_expired) $data['link'] = TRUE; else $data['link'] = FALSE; }

$data['url'] = array('a', __CLASS__, __FUNCTION__); $data['judul'] = 'Update Password';

$data['notice'] = array('', ''); $data['post'] = 'a/login/reset/'.$id;

$this->form_validation->set_rules('data_password', ' ',

'trim|required|min_length[5]|max_length[128]|xss_clean'); $this->form_validation->set_rules('data_passconf', ' ',

'trim|required|matches[data_password]|xss_clean');

if($this->form_validation->run() AND $data['link']){ $user_password = md5(sha1($this->input

->post('data_password', TRUE)));

$this->model_login->edit_reset(array($user_password,

$query['reset_users'])); $this->model_login

->delete_reset(array($query['reset_users'])); redirect('a/login/index/resettrue'); }

else{

if(css_notice(validation_errors())) $data['notice'] =

array('red', 'ERROR : ERROR : Data tidak lengkap!'); }

$this->load->view(view('login', 'view_reset'), $data); }

2. Home.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access

allowed');

class Home extends CI_Controller{ function __construct(){

parent::__construct(); if(!is_login())

redirect('a/login/index/loginfalse/'.encode(uri_string())); date_default_timezone_set('Asia/Jakarta');

$this->load->model('a/model_home'); }

function index(){

$data['url'] = array('a', __CLASS__, __FUNCTION__); $data['notice'] = array('', '');

$data['judul'] = 'Beranda'; //pie

$data['pie_series'] = 'Hasil Seleksi'; $data['pie_satuan'] = 'orang';

$cek_gel_max = $this->model_home->cek_gel_max(); $cek_gel_max = $cek_gel_max->row_array();

$data['pie_judul'] = '<b>Statistik Hasil Seleksi

('.$cek_gel_max['gel_ta'].' - '.$cek_gel_max['gel_nama'].') :</b>'; $pie_pilihan_status = $this->model_home

->pie_pilihan_status(array($cek_gel_max['gel_id']));

$pie_pilihan_status = $pie_pilihan_status->result_array(); foreach ($pie_pilihan_status as $key=>$row)

$pie_pilihan_status[$key]['pilihan_status'] =

ucfirst($row['pilihan_status']);

$data['pie_pilihan_status'] = $pie_pilihan_status; //gel tahun terakhir

$cek_gel_ta_max = $this->model_home->cek_gel_ta_max(); $data['cek_gel_ta_max'] = $cek_gel_ta_max->result_array(); //kuota gel terkahir

80

$data['cek_kuota_gel_max'] = $cek_kuota_gel_max ->result_array();

//jurusan

$cek_jur = $this->model_home->cek_jur(); $data['cek_jur'] = $cek_jur->result_array(); //mapel

$cek_mapel = $this->model_home->cek_mapel(); $data['cek_mapel'] = $cek_mapel->result_array(); //user

$cek_users = $this->model_home->cek_users(); $data['cek_users'] = $cek_users->result_array(); $this->load->view(view('a', 'view_home'), $data); }

}

3. Siswa.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access

allowed');

class Siswa extends CI_Controller{ function __construct(){

parent::__construct(); if(!is_login())

redirect('a/login/index/loginfalse/'.encode(uri_string())); date_default_timezone_set('Asia/Jakarta');

$this->load->model('a/model_siswa'); }

function index($notice = FALSE, $gel_id = FALSE, $hapus_cari =

FALSE, $status = FALSE, $cari = FALSE){ //destroy session

if(strtolower($hapus_cari) == 'do'){

$this->session->unset_userdata('a_siswa_index_status'); $this->session->unset_userdata('a_siswa_index_cari');

}

if($gel_id === FALSE OR decode($gel_id) != $this->session ->userdata('a_siswa_index_gelombang')){

$this->session->unset_userdata('a_siswa_index_gelombang'); $this->session->unset_userdata('a_siswa_index_status'); $this->session->unset_userdata('a_siswa_index_cari'); }

// gelombang

if($gel_id === FALSE){

$cek_gel_max = $this->model_siswa->cek_gel_max(); $cek_gel_max = $cek_gel_max->row_array();

$gel_id = $cek_gel_max['gel_id']; // jika parameter kosong maka ambil gel_id paling akhir

}

else $gel_id = (int) decode($gel_id); //daftar gelombang tahun max

$cek_gel_ta = $this->model_siswa->cek_gel_ta(); // gelombang tahun max

$cek_gel_ta_max = $cek_gel_ta->row_array(); $cek_gel_ta = $cek_gel_ta->result_array();

if($gel_id == 0) $link_text = '<b><u>'.'Semua'.'</u></b>'; else $link_text = 'Semua';

//judul

$data['url'] = array('a', __CLASS__, __FUNCTION__);

$data['judul'] = 'Semua Siswa - '.$cek_gel_ta_max['gel_ta']; $data['notice'] = array('', '');

//print

$data['filter_gel'][0] =

anchor('a/siswa/index/false/'.encode(0).'/do', $link_text); foreach ($cek_gel_ta as $row){

if($gel_id == $row['gel_id']) $link_text =

'<b><u>'.$row['gel_nama'].'</u></b>';

else $link_text = $row['gel_nama'];

$data['filter_gel'][$row['gel_id']] = ' |

'.anchor('a/siswa/index/false/'.encode($row['gel_id']).'/do',

82

}

// input

$this->form_validation->set_rules('data_status', ' ',

'trim|required|xss_clean|decode[]|is_equal[semua, sdh_dicek, blm_dicek]');

$this->form_validation->set_rules('data_cari', ' ',

'xss_clean');

if($this->form_validation->run()){

$status = $this->input->post('data_status', TRUE); $cari = $this->input->post('data_cari', TRUE); $this->session

->set_userdata(array('a_siswa_index_gelombang'=>$gel_id,

'a_siswa_index_status'=>$status, 'a_siswa_index_cari'=>$cari)); }

else{

if(css_notice(validation_errors())) $data['notice'] =

array('red', 'ERROR : Data tidak lengkap'); }

// status

if($status === FALSE){

if($this->session->userdata('a_siswa_index_status'))

$status = $this->session->userdata('a_siswa_index_status'); else $status = 'semua';

}

$data['status'] = $status;

$data['pilih_status']['semua'] = FALSE; $data['pilih_status']['sdh_dicek'] = FALSE; $data['pilih_status']['blm_dicek'] = FALSE;

if($status == 'semua') $data['pilih_status']['semua'] = TRUE; elseif($status == 'sdh_dicek')

$data['pilih_status']['sdh_dicek'] = TRUE; elseif($status == 'blm_dicek')

$data['pilih_status']['blm_dicek'] = TRUE;

$data['post'] = 'a/siswa/index/false/'.encode($gel_id); // search

get

if($this->session->userdata('a_siswa_index_cari')) $cari =

$this->session->userdata('a_siswa_index_cari'); else $cari = '';

}

else $cari = trim($cari);

$data['post_cari'] = 'a/siswa/index/false/'.encode($gel_id); $data['data_cari'] = $cari;

$query = $this->model_siswa->index(array($gel_id, $status,

$cari));

//cek kuota

$cek_jur = $this->model_siswa->cek_jur(); $cek_jur = $cek_jur->result_array();

if($query->num_rows == 0 AND strlen($cari) > 0)

$data['notice'] = array('yellow', 'NOTICE : Hasil pencarian untuk

<b>"'.$cari.'"</b> tidak ditemukan!');

elseif(count($cek_jur) == 0) $data['notice'] = array('red',

'ERROR : Jurusan belum memiliki kuota! '.anchor('a/kuota/add',

'Tambah Kuota'));

elseif($query->num_rows == 0) $data['notice'] =

array('yellow', 'NOTICE : Data siswa belum ada! '.anchor('a/siswa/add', 'Tambah Siswa'));

$data['query'] = $query->result_array();

if($notice == 'deletetrue') $data['notice'] = array('green',

'SUCCES : Hapus data berhasil!');

elseif($notice == 'edittrue') $data['notice'] = array('green',

'SUCCES : Edit data berhasil!');

elseif($notice == 'editfalse') $data['notice'] =

array('yellow', 'NOTICE : Data tidak berubah!');

elseif($notice == 'addtrue') $data['notice'] = array('green',

'SUCCES : Berhasil menambah data!');

elseif($notice == 'none') $data['notice'] = array('yellow',

'NOTICE : Data tidak ada!');

$this->load->view(view('a', 'view_siswa'), $data); }

84

= back setelah berhasil delete

$kelas = explode ('/', decode($url));

$data['url'] = array('a', strtolower($kelas[1]), 'index'); $data['judul'] = 'Hapus Siswa';

$data['notice'] = array('', '');

$data['get'] = 'a/siswa/delete/'.$siswa_id.'/'.$url.'/'.'do'; $data['back'] = decode($url);

$query = $this->model_siswa

->cek_siswa_id(array(decode($siswa_id)));

if($query->num_rows() == 0) redirect('a/siswa/index/none'); $query = $query->row_array();

$data['msg'] = 'Hapus Siswa "'.$query['siswa_nama'].'"?'; if($do == 'do'){

$hapus = $this->model_siswa ->delete(array($query['siswa_id'])); // start of hasil //

#######################################################

$this->load->helper('hasil'); //load helper

generate($query['siswa_gel']); // generate hasil

// end of hasil //

#########################################################

if($hapus){

$url = explode ('/', decode($url));

if(count($url) >= 3) $url[3] = 'deletetrue'; $url = implode('/', $url);

redirect($url); }

}

$this->load->view(view('a', 'view_/view_delete'), $data); }

function add($notice = FALSE){ $data['doOnLoad'] = TRUE;

$data['url'] = array('a', __CLASS__, __FUNCTION__); //$data['judul'] = 'Tambah Siswa'; // pindah bawah

$data['notice'] = array('', ''); $data['post'] = 'a/siswa/add';

$data['simpan'] = 'Simpan'; $data['back'] = 'a/siswa/index';

$cek_agama = $this->model_siswa->cek_agama(); $cek_agama = $cek_agama->result_array(); $cek_prov = $this->model_siswa->cek_prov(); $cek_prov = $cek_prov->result_array(); $cek_pend = $this->model_siswa->cek_pend(); $cek_pend = $cek_pend->result_array(); $cek_pek = $this->model_siswa->cek_pek(); $cek_pek = $cek_pek->result_array();

$cek_gel_max = $this->model_siswa->cek_gel_max(); $cek_gel_max = $cek_gel_max->row_array();

$cek_mapel = $this->model_siswa->cek_mapel(); $cek_mapel = $cek_mapel->result_array();

$cek_jentest = $this->model_siswa->cek_jentest(); $cek_jentest = $cek_jentest->result_array(); $cek_jur = $this->model_siswa->cek_jur(); $cek_jur = $cek_jur->result_array();

if(count($cek_jur) == 0) $data['notice'] = array('red', 'ERROR : Jurusan belum memiliki kuota! '.anchor('a/kuota/add', 'Tambah Kuota'));

// judul

$data['judul'] = 'Tambah Siswa - '.$cek_gel_max['gel_ta'].' - '.$cek_gel_max['gel_nama'];

// data siswa

$data['data_nama'] = '';

$data['data_nama_panggilan'] = ''; $data['data_jenis_kelamin_l'] = TRUE; $data['data_jenis_kelamin_p'] = FALSE; $data['data_tempat_lahir'] = '';

$data['data_tanggal_lahir'] = date('d-m-Y', time() - (16 * 360

* 86400));

$data['data_agama'] = $cek_agama; $data['pilih_agama'] = 1;

$data['data_sekolah_asal'] = ''; $data['data_sekolah_alamat'] = '';

86 $data['data_suku'] = ''; $data['data_anak_ke'] = ''; $data['data_jumlah_saudara'] = ''; $data['data_kecamatan'] = ''; $data['data_kabupaten'] = ''; $data['data_prov'] = $cek_prov; $data['pilih_prov'] = 1; $data['data_kode_pos'] = ''; $data['data_alamat'] = ''; $data['data_alamat_pos'] = ''; $data['data_telepon'] = ''; $data['data_hp'] = ''; $data['data_email'] = '';

$data['data_gol_darah_none'] = TRUE; $data['data_gol_darah_a'] = FALSE; $data['data_gol_darah_b'] = FALSE; $data['data_gol_darah_o'] = FALSE; $data['data_gol_darah_ab'] = FALSE; $data['data_tinggi_badan'] = ''; $data['data_berat_badan'] = ''; $data['data_penyakit'] = ''; $data['data_keterangan'] = '';

$data['data_status_sdh_dicek'] = TRUE; $data['data_status_blm_dicek'] = FALSE; // orang tua

$data['ot_nama_ayah'] = ''; // ayah

$data['ot_pend_ayah'] = $cek_pend; $data['pilih_pend_ayah'] = 2; $data['ot_pek_ayah'] = $cek_pek; $data['pilih_pek_ayah'] = 1; $data['ot_gaji_ayah'] = ''; $data['ot_hp_ayah'] = '';

$data['ot_nama_ibu'] = ''; //ibu

$data['ot_pend_ibu'] = $cek_pend; $data['pilih_pend_ibu'] = 2; $data['ot_pek_ibu'] = $cek_pek;

$data['pilih_pek_ibu'] = 1; $data['ot_gaji_ibu'] = ''; $data['ot_hp_ibu'] = ''; $data['ot_alamat_ortu'] = ''; $data['ot_nama_wali'] = ''; //wali

$data['ot_pend_wali'] = $cek_pend; $data['pilih_pend_wali'] = 2; $data['ot_pek_wali'] = $cek_pek; $data['pilih_pek_wali'] = 1; $data['ot_gaji_wali'] = ''; $data['ot_hp_wali'] = ''; $data['ot_alamat_wali'] = '';

$data['ot_status_asuh_ortu'] = TRUE; $data['ot_status_asuh_wali'] = FALSE; // nilai uan

$data['nilai_mapel'] = $cek_mapel; // nilai prestasi

$data['nilai_prestasi'] = ''; // nilai test

$data['test_jentest'] = $cek_jentest; // pilih jurusan

$data['pilihan_jumlah_pilihan'] =

$cek_gel_max['gel_jumlah_pilihan'];

$data['pilihan_jur'] = $cek_jur;

foreach ($cek_jur as $key => $row) $data['pilih_pilihan'][$key

+ 1] = $row['jur_id']; // data siswa

$this->form_validation->set_rules('data_nama', ' ',

'trim|required|max_length[128]|xss_clean');

$this->form_validation->set_rules('data_nama_panggilan', ' ',

'trim|max_length[32]|xss_clean');

$this->form_validation->set_rules('data_jenis_kelamin', ' ',

'trim|xss_clean|decode[]|is_equal[l, p]');

$this->form_validation->set_rules('data_tempat_lahir', ' ',

'trim|required|max_length[64]|xss_clean');

88

'trim|required|max_length[10]|xss_clean|is_date');

$this->form_validation->set_rules('data_sekolah_asal', ' ',

'trim|required|max_length[128]|xss_clean');

$this->form_validation->set_rules('data_sekolah_alamat', ' ',

'trim|max_length[255]|xss_clean');

$this->form_validation->set_rules('data_agama', ' ',

'trim|xss_clean|decode[]|is_in[agama.agama_id]');

$this->form_validation->set_rules('data_suku', ' ',

'trim|max_length[64]|xss_clean');

$this->form_validation->set_rules('data_anak_ke', ' ',

'trim|numeric|max_length[2]|less_than[99]|xss_clean');//

$this->form_validation->set_rules('data_jumlah_saudara', ' ',

'trim|numeric|max_length[2]|less_than[99]|xss_clean');//

$this->form_validation->set_rules('data_alamat', ' ',

'trim|max_length[255]|xss_clean');

$this->form_validation->set_rules('data_prov', ' ',

'trim|xss_clean|decode[]|is_in[provinsi.prov_id]');

$this->form_validation->set_rules('data_kabupaten', ' ',

'trim|max_length[64]|xss_clean');

$this->form_validation->set_rules('data_kecamatan', ' ',

'trim|max_length[64]|xss_clean');

$this->form_validation->set_rules('data_kode_pos', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('data_alamat_pos', ' ',

'trim|max_length[255]|xss_clean');

$this->form_validation->set_rules('data_telepon', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('data_hp', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('data_email', ' ',

'trim|valid_email|max_length[128]|xss_clean');

$this->form_validation->set_rules('data_gol_darah', ' ',

'trim|xss_clean|decode[]|is_equal[a, b, ab, o, none]');

$this->form_validation->set_rules('data_tinggi_badan', ' ',

'trim|max_length[16]|xss_clean');//

'trim|max_length[16]|xss_clean');//

$this->form_validation->set_rules('data_penyakit', ' ',

'trim|max_length[255]|xss_clean');

$this->form_validation->set_rules('data_keterangan', ' ',

'trim|max_length[255]|xss_clean');

$this->form_validation->set_rules('data_status', ' ',

'trim|xss_clean|decode[]|is_equal[sdh_dicek, blm_dicek]'); // orang tua

$this->form_validation->set_rules('ot_status_asuh', ' ',

'trim|xss_clean|decode[]|is_equal[ortu, wali]');

$this->form_validation->set_rules('ot_nama_ayah', ' ',

'trim|max_length[255]|xss_clean'); // ayah

$this->form_validation->set_rules('ot_pend_ayah', ' ',

'trim|xss_clean|decode[]|is_in[pendidikan.pend_id]');

$this->form_validation->set_rules('ot_pek_ayah', ' ',

'trim|xss_clean|decode[]|is_in[pekerjaan.pek_id]');

$this->form_validation->set_rules('ot_gaji_ayah', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('ot_hp_ayah', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('ot_nama_ibu', ' ',

'trim|max_length[255]|xss_clean'); // ibu

$this->form_validation->set_rules('ot_pend_ibu', ' ',

'trim|xss_clean|decode[]|is_in[pendidikan.pend_id]'); $this->form_validation->set_rules('ot_pek_ibu', ' ',

'trim|xss_clean|decode[]|is_in[pekerjaan.pek_id]');

$this->form_validation->set_rules('ot_gaji_ibu', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('ot_hp_ibu', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('ot_alamat_ortu', ' ',

'trim|max_length[255]|xss_clean');

$this->form_validation->set_rules('ot_nama_wali', ' ',

'trim|max_length[255]|xss_clean'); // wali

$this->form_validation->set_rules('ot_pend_wali', ' ',

90

$this->form_validation->set_rules('ot_pek_wali', ' ',

'trim|xss_clean|decode[]|is_in[pekerjaan.pek_id]');

$this->form_validation->set_rules('ot_gaji_wali', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('ot_hp_wali', ' ',

'trim|max_length[16]|xss_clean');

$this->form_validation->set_rules('ot_alamat_wali', ' ',

'trim|max_length[255]|xss_clean'); // nilai uan

foreach($cek_mapel as $row) { $this->form_validation

->set_rules('nilai_mapel['.$row['mapel_id'].']', ' ',

'trim|required|is_nilai|xss_clean');

$jumlah_mapel = @$jumlah_mapel + 1; }

//nilai prestasi

$this->form_validation->set_rules('nilai_prestasi', ' ',

'trim|is_nilai|xss_clean'); // nilai test

foreach($cek_jentest as $row) $this->form_validation ->set_rules('test_jentest['.$row['jentest_id'].']', ' ',

'trim|is_nilai['.$jumlah_mapel.']|xss_clean'); // pilih jurusan

for($i = 1; $i <= $cek_gel_max['gel_jumlah_pilihan'];

$i++)$this->form_validation->set_rules('pilihan_jur['.$i.']', ' ',

'trim|required|xss_clean|decode[]|is_in[jurusan.jur_id]'); if($this->form_validation->run()){

$siswa_gel = $cek_gel_max['gel_id'];

$cek_siswa_max = $this->model_siswa->cek_siswa_max();

if($cek_siswa_max->num_rows() == 0) $siswa_no_pendaftaran = ($cek_gel_max['gel_kode'] * 10000) + 1;

else{

$cek_siswa_max = $cek_siswa_max->row_array();

$siswa_no_pendaftaran = ($cek_gel_max['gel_kode'] *

10000) + (substr($cek_siswa_max['siswa_no_pendaftaran'], 4, 4) + 1);

// siswa

$siswa_nama = $this->input->post('data_nama', TRUE); $siswa_nama_panggilan = $this->input

->post('data_nama_panggilan', TRUE);

$siswa_jenis_kelamin = $this->input ->post('data_jenis_kelamin', TRUE);

$siswa_tempat_lahir = $this->input ->post('data_tempat_lahir', TRUE);

$siswa_tanggal_lahir = date('Y-m-d', strtotime($this ->input->post('data_tanggal_lahir', TRUE)));

$siswa_sekolah_asal = $this->input ->post('data_sekolah_asal', TRUE);

$siswa_sekolah_alamat = $this->input ->post('data_sekolah_alamat', TRUE);

$siswa_agama = $this->input->post('data_agama', TRUE); $siswa_suku = $this->input->post('data_suku', TRUE);

$siswa_anak_ke = $this->input->post('data_anak_ke', TRUE); $siswa_jumlah_saudara = $this->input

->post('data_jumlah_saudara', TRUE);

$siswa_alamat = $this->input->post('data_alamat', TRUE); $siswa_prov = $this->input->post('data_prov', TRUE); $siswa_kabupaten = $this->input->post('data_kabupaten',

TRUE);

$siswa_kecamatan = $this->input->post('data_kecamatan',

TRUE);

$siswa_kode_pos = $this->input->post('data_kode_pos',

TRUE);

$siswa_alamat_pos = $this->input->post('data_alamat_pos',

TRUE);

$siswa_telepon = $this->input->post('data_telepon', TRUE); $siswa_hp = $this->input->post('data_hp', TRUE);

$siswa_email = $this->input->post('data_email', TRUE); $siswa_gol_darah = $this->input->post('data_gol_darah',

TRUE);

$siswa_tinggi_badan = $this->input ->post('data_tinggi_badan', TRUE);

92

$siswa_berat_badan = $this->input->post('data_berat_badan',

TRUE);

$siswa_penyakit = $this->input->post('data_penyakit',

TRUE);

$siswa_tanggal_daftar = date('Y-m-d'); $siswa_tanggal_ulang = NULL;

$siswa_status = $this->input->post('data_status', TRUE); $siswa_keterangan = $this->input->post('data_keterangan',

TRUE);

$query_siswa = $this->model_siswa

->add_siswa(array($siswa_gel, $siswa_no_pendaftaran, $siswa_nama,

$siswa_nama_panggilan, $siswa_jenis_kelamin, $siswa_tempat_lahir,

$siswa_tanggal_lahir, $siswa_sekolah_asal, $siswa_sekolah_alamat,

$siswa_agama, $siswa_suku, $siswa_anak_ke, $siswa_jumlah_saudara,

$siswa_alamat, $siswa_prov, $siswa_kabupaten, $siswa_kecamatan,

$siswa_kode_pos, $siswa_alamat_pos, $siswa_telepon, $siswa_hp,

$siswa_email, $siswa_gol_darah, $siswa_tinggi_badan,

$siswa_berat_badan, $siswa_penyakit, $siswa_tanggal_daftar,

$siswa_tanggal_ulang, $siswa_status, $siswa_keterangan));

$siswa_id = $this->db->insert_id(); // orang tua

$ot_nama_ayah = $this->input->post('ot_nama_ayah', TRUE); $ot_pend_ayah = $this->input->post('ot_pend_ayah', TRUE); $ot_pek_ayah = $this->input->post('ot_pek_ayah', TRUE); $ot_gaji_ayah = $this->input->post('ot_gaji_ayah', TRUE); $ot_hp_ayah = $this->input->post('ot_hp_ayah', TRUE); $ot_nama_ibu = $this->input->post('ot_nama_ibu', TRUE); $ot_pend_ibu = $this->input->post('ot_pend_ibu', TRUE); $ot_pek_ibu = $this->input->post('ot_pek_ibu', TRUE); $ot_gaji_ibu = $this->input->post('ot_gaji_ibu', TRUE); $ot_hp_ibu = $this->input->post('ot_hp_ibu', TRUE); $ot_alamat_ortu = $this->input->post('ot_alamat_ortu',

TRUE);

$ot_nama_wali = $this->input->post('ot_nama_wali', TRUE); $ot_pend_wali = $this->input->post('ot_pend_wali', TRUE); $ot_pek_wali = $this->input->post('ot_pek_wali', TRUE);

$ot_gaji_wali = $this->input->post('ot_gaji_wali', TRUE); $ot_hp_wali = $this->input->post('ot_hp_wali', TRUE); $ot_alamat_wali = $this->input->post('ot_alamat_wali',

TRUE);

$ot_status_asuh = $this->input->post('ot_status_asuh',

TRUE);

$query_ot = $this->model_siswa

->add_orang_tua(array($siswa_id, $ot_nama_ayah, $ot_pend_ayah,

$ot_pek_ayah, $ot_gaji_ayah, $ot_hp_ayah, $ot_nama_ibu,

$ot_pend_ibu, $ot_pek_ibu, $ot_gaji_ibu, $ot_hp_ibu,$ot_alamat_ortu,

$ot_nama_wali, $ot_pend_wali, $ot_pek_wali, $ot_gaji_wali,

$ot_hp_wali, $ot_alamat_wali, $ot_status_asuh));

// nilai

$nilai_mapel = $this->input->post('nilai_mapel', TRUE); foreach($cek_mapel as $row) $query_nilai = $this

->model_siswa->add_nilai(array($siswa_id, $row['mapel_id'],

Dokumen terkait