Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php defined('BASEPATH') or exit('No direct script access allowed'); class Backup_tot..
Decoded Output download
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Backup_total extends CI_Controller
{
public function __construct()
{
parent::__construct();
check_throttle();
if (!get_session('logged_in')) {
redirect('login');
}
}
public function backup_prefill_tot()
{
ini_set('memory_limit', '10240M');
ini_set('max_execution_time', 3600);
$sekolah_id = get_session('sekolahid');
$sekolah = query("tabel_sekolah", "sekolah_id = '$sekolah_id'")->row();
$tables = [
"nilai_data_sync" => "Data Sync",
"nilai_matev_rapor" => "Matev Rapor",
"nilai_nilai_ekskul" => "Nilai Ekskul Dapo",
"nilai_nilai_rapor" => "Nilai Rapor Dapo",
"nilai_nilai_smt" => "Nilai Sikap Dapo",
"nilai_pengguna" => "Pengguna Dapo",
"nilai_un" => "Nilai UN Dapo",
];
$this->simpan_file_json($tables, 1);
$tables = [
"projec_nilai_catatanprojek" => "Nilai Catatan Projek",
"projec_nilai_profil_projek" => "Nilai P5 Projek",
"projec_profil_capaian" => "Capaian P5",
"projec_profil_dimensi" => "Dimensi P5",
"projec_profil_elemen" => "Elemen P5",
"projec_profil_project" => "Projek P5",
"projec_profil_subelemen" => "Sub Elemen P5",
"projec_profil_tema" => "Tema P5",
"projec_project_capaianprofil" => "Capaian Projek P5",
"projec_ref_penilaian" => "Referensi Penilaian",
"projec_tabel_anggotakelompok" => "Anggota Kelompok P5",
"projec_tabel_kelompok" => "Kelompok P5",
"projec_tabel_kelompok_projek" => "Kelompok Projek P5",
];
$this->simpan_file_json($tables, 2);
$tables = [
"pkl_tabel_anggotakelompok" => "Anggota Rombel",
"pkl_tabel_capaian_pkl" => "Capaian PKL",
"pkl_tabel_elemenpkl" => "Elemen PKL",
"pkl_tabel_indikatortp" => "Indikator PKL",
"pkl_tabel_kelompok" => "Kelompok PKL",
"pkl_tabel_nilai_pkl" => "Nilai PKL",
"pkl_tabel_pelengkap_pkl" => "Catatan PKL",
"pkl_tabel_rencana_pkl" => "Rencana PKL",
"pkl_tabel_tp_elemen" => "Tujuan Pembelajaran PKL",
];
$this->simpan_file_json($tables, 3);
$tables = [
"jurusan" => "Jurusan",
"loginstatus" => "Status Login",
"ref_klp_mapel" => "Referensi Kelompok Mapel",
"ref_mapeldapo" => "Referensi Mapel Dapodik",
"ref_teknik" => "Referensi Teknik Penilaian",
"refekstra_kurikuler" => "Referensi Ekskul",
"semester" => "Semester",
"status_data" => "Status Data",
"status_input" => "Status Input",
"tabel_anggotakelas" => "Anggota Rombel",
"tabel_antar_mapel" => "Nilai Antar Mapel",
"tabel_asesor" => "Asesor",
"tabel_capaiantp" => "Capaian TP",
"tabel_cat_wali" => "Catatan Wali Kelas",
"tabel_deskripsi" => "Nilai Deskripsi Capaian",
"tabel_deskripsi_tengah" => "Deskripsi Capaian Tengan Semester",
"tabel_dudi" => "Data DuDi",
"tabel_ekstra" => "Data Ekskul",
];
$this->simpan_file_json($tables, 4);
$tables = [
"tabel_indikator_skkni" => "Indikator SKKNI",
"tabel_info" => "Info",
"tabel_jurusan" => "Data Jurusan",
"tabel_kehadiran" => "Data Kehadiran",
"tabel_kelas" => "Data Rombel",
"tabel_kelas_ekskul" => "Data Rombel Ekskul",
"tabel_kenaikan" => "Data Kenaikan",
"tabel_kkm" => "Data KKM",
"tabel_kurikulum" => "Data Kurikulum",
"tabel_map_mapelk2013" => "Mapping Mapel Rapor",
"tabel_map_mapelskl" => "Mapping Mapel SKL",
"tabel_mapel" => "Data Mapel",
"tabel_nilai_dudi" => "Nilai DuDi",
];
$this->simpan_file_json($tables, 5);
$tables = [
"tabel_nilai_ekstra" => "Nilai Ekskul",
"tabel_nilai_formatif" => "Nilai Formatif",
"tabel_nilai_karakter" => "Nilai Karakter",
"tabel_nilai_p3guru" => "Nilai P3 Guru",
"tabel_nilai_ukk" => "Nilai UKK",
"tabel_nilaiakhir" => "Nilai Rapor",
"tabel_nilaiskl" => "Nilai SKL",
"tabel_nilaitengah" => "Nilai PTS",
"tabel_paket_kompetensi" => "Data Paket Kompetensi",
"tabel_pembelajaran" => "Data Pembelajaran",
"tabel_ptk" => "Data PTK",
"tabel_ptk_pelengkap" => "Data Pelengkap PTK",
"tabel_ptk_terdaftar" => "Data PTK Aktif",
];
$this->simpan_file_json($tables, 6);
$tables = [
"tabel_ptspas" => "Nilai Sumatif",
"tabel_registrasi_pd" => "Registrasi PD",
"tabel_rombel_skil" => "Kelompok Skill Pasport",
"tabel_sekolah" => "Data Sekolah",
"tabel_setskl" => "Setting SKL",
"tabel_siswa" => "Data Siswa",
"tabel_siswa_pelengkap" => "Data Pelengkap Siswa",
"tabel_skilpassport" => "Data Skill Pasport",
"tabel_sklidentitas" => "Data Identitas SKL",
"tabel_sskkd_skkni" => "Data SKKNI",
"tabel_sumatif_pas" => "Data Nilai Sumatif",
"tabel_tanggalrapor" => "Tanggal Rapor",
"tabel_targetcapaian" => "Target Capaian",
"tabel_targetcptp" => "Target Capaian TP",
"tabel_unit_kompetensi" => "Unit Kompetensi",
"user_login" => "Data Pengguna",
];
$this->simpan_file_json($tables, 7);
$tables = [
"tambah_koneksi" => "Data Koneksi",
"tambah_koneksi_ext" => "Data Integrasi",
"tambah_logo_ttdkepsek" => "Data TTD Kepsek",
"tambah_mapel_gabung" => "Data Mapel Gabung",
"tambah_tabel_nilai_klaper" => "Data Link Buku Induk",
"tambah_tabel_nilai_pkl" => "Data Link Nilai PKL",
"tambah_tabel_nilai_rapor" => "Data Link Nilai Rapor",
"tambah_tabel_nilai_rapor_pts" => "Data Link Rapor PTS",
"tambah_tabel_nilai_skl" => "Data Link Nilai SKL",
"tambah_tabel_nilai_tengah" => "Data Link Nilai Sumatif",
"tambah_tabel_nilaiprojek" => "Data Link Nilai Projek",
"tambah_tabel_pelengkap" => "Data Link Pelengkap Rapor",
"tambah_tabel_sertifikat" => "Data Link Sertifikat UKK",
"tambah_tabel_transkrip" => "Data Link Transkrip",
"tambah_tabel_transkrip_nilai" => "Data Link Transkrip Nilai",
"tambah_tbl_kehadiran_ext" => "Integrasi Kehadiran",
"tambah_tbl_nilai_ext" => "Integrasi Rapor",
"tambah_tbl_nilaiekskul_ext" => "Integrasi Ekskul",
"tambah_tbl_nilaip3_k13" => "Integrasi P5",
"tambah_ttd_ptk" => "Data TTD Wali Kelas",
];
$this->simpan_file_json($tables, 8);
$zip = new ZipArchive();
$path = FCPATH . 'backup/';
$zip_name = $path . 'file_raporsptotal.rsp';
$files = [
$path . 'file_json1.json',
$path . 'file_json2.json',
$path . 'file_json3.json',
$path . 'file_json4.json',
$path . 'file_json5.json',
$path . 'file_json6.json',
$path . 'file_json7.json',
$path . 'file_json8.json'
];
if ($zip->open($zip_name, ZipArchive::CREATE) === TRUE) {
foreach ($files as $file) {
$file_name = basename($file);
$zip->addFile($file, $file_name);
}
$zip->close();
}
foreach ($files as $file) {
if (file_exists($file)) unlink($file);
}
$file_name = 'backup_' . $sekolah->npsn . date('Ymd') . '_.msq';
$zip_name = $path . $file_name;
$file = $path . 'file_raporsptotal.rsp';
if ($zip->open($zip_name, ZipArchive::CREATE) === TRUE) {
$zip->addFile($file, 'file_raporsptotal.rsp');
$zip->close();
}
if (file_exists($file)) unlink($file);
$data['download_link'] = base_url('backup/' . $file_name);
$data['file_name'] = $file_name;
echo json_encode($data);
}
public function restore()
{
$data['content'] = $this->load->view('admin/backup/restore_all', null, true);
$this->load->view('master', $data);
}
public function proses_restore()
{
ini_set('memory_limit', '10240M');
ini_set('max_execution_time', 3600);
$filename = $_FILES['file']['name'];
if (move_uploaded_file($_FILES['file']['tmp_name'], $filename)) {
$zip = new ZipArchive();
if ($zip->open($filename) === true) {
$zip->extractTo('zip');
$zip->close();
}
unlink($filename);
}
$zipfile = FCPATH . 'zip/file_raporsptotal.rsp';
$zip = new ZipArchive;
if ($zip->open($zipfile) === TRUE) {
$zip->extractTo(FCPATH . 'zip');
$zip->close();
unlink($zipfile);
}
for ($i = 1; $i <= 8; $i++) {
$json_file = FCPATH . 'zip/file_json' . $i . '.json';
$json_data = file_get_contents($json_file);
$data = json_decode($json_data, true);
foreach ($data as $item) {
if ($item['jumlah'] > 0) {
$tableName = $item['tabel'];
$itemData = $item['data'];
if (is_array($itemData) && !empty($itemData)) {
$columns = array_keys($itemData[0]);
$chunkedData = array_chunk($itemData, 5000);
foreach ($chunkedData as $chunk) {
$query = "INSERT IGNORE INTO $tableName (";
$query .= implode(", ", $columns);
$query .= ") VALUES ";
$values = [];
foreach ($chunk as $row) {
$values[] = "(" . implode(", ", array_map(function ($value) {
return is_null($value) ? 'NULL' : "'" . vldstr($value) . "'";
}, $row)) . ")";
}
$query .= implode(", ", $values) . ";";
mquery($query);
}
}
}
}
unlink($json_file);
}
echo 'Sudah selesai melakukan restore data';
}
private function get_data($table)
{
return query($table)->result_array();
}
private function simpan_file_json($tables, $nomor)
{
$id_sekolah = get_session('sekolahid');
$json_data = array();
foreach ($tables as $tabel => $nm_tabel) {
$data = $this->get_data($tabel);
$table_data = array(
"id_sekolah" => $id_sekolah,
"nm_tabel" => $nm_tabel,
"semester" => null,
"tahun" => "",
"tabel" => $tabel,
"jumlah" => count($data),
"data" => $data
);
$json_data[] = $table_data;
}
$json_result = json_encode($json_data, JSON_PRETTY_PRINT);
$file_path = FCPATH . 'backup/file_json' . $nomor . '.json';
file_put_contents($file_path, $json_result);
}
}
?>
Did this file decode correctly?
Original Code
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Backup_total extends CI_Controller
{
public function __construct()
{
parent::__construct();
check_throttle();
if (!get_session('logged_in')) {
redirect('login');
}
}
public function backup_prefill_tot()
{
ini_set('memory_limit', '10240M');
ini_set('max_execution_time', 3600);
$sekolah_id = get_session('sekolahid');
$sekolah = query("tabel_sekolah", "sekolah_id = '$sekolah_id'")->row();
$tables = [
"nilai_data_sync" => "Data Sync",
"nilai_matev_rapor" => "Matev Rapor",
"nilai_nilai_ekskul" => "Nilai Ekskul Dapo",
"nilai_nilai_rapor" => "Nilai Rapor Dapo",
"nilai_nilai_smt" => "Nilai Sikap Dapo",
"nilai_pengguna" => "Pengguna Dapo",
"nilai_un" => "Nilai UN Dapo",
];
$this->simpan_file_json($tables, 1);
$tables = [
"projec_nilai_catatanprojek" => "Nilai Catatan Projek",
"projec_nilai_profil_projek" => "Nilai P5 Projek",
"projec_profil_capaian" => "Capaian P5",
"projec_profil_dimensi" => "Dimensi P5",
"projec_profil_elemen" => "Elemen P5",
"projec_profil_project" => "Projek P5",
"projec_profil_subelemen" => "Sub Elemen P5",
"projec_profil_tema" => "Tema P5",
"projec_project_capaianprofil" => "Capaian Projek P5",
"projec_ref_penilaian" => "Referensi Penilaian",
"projec_tabel_anggotakelompok" => "Anggota Kelompok P5",
"projec_tabel_kelompok" => "Kelompok P5",
"projec_tabel_kelompok_projek" => "Kelompok Projek P5",
];
$this->simpan_file_json($tables, 2);
$tables = [
"pkl_tabel_anggotakelompok" => "Anggota Rombel",
"pkl_tabel_capaian_pkl" => "Capaian PKL",
"pkl_tabel_elemenpkl" => "Elemen PKL",
"pkl_tabel_indikatortp" => "Indikator PKL",
"pkl_tabel_kelompok" => "Kelompok PKL",
"pkl_tabel_nilai_pkl" => "Nilai PKL",
"pkl_tabel_pelengkap_pkl" => "Catatan PKL",
"pkl_tabel_rencana_pkl" => "Rencana PKL",
"pkl_tabel_tp_elemen" => "Tujuan Pembelajaran PKL",
];
$this->simpan_file_json($tables, 3);
$tables = [
"jurusan" => "Jurusan",
"loginstatus" => "Status Login",
"ref_klp_mapel" => "Referensi Kelompok Mapel",
"ref_mapeldapo" => "Referensi Mapel Dapodik",
"ref_teknik" => "Referensi Teknik Penilaian",
"refekstra_kurikuler" => "Referensi Ekskul",
"semester" => "Semester",
"status_data" => "Status Data",
"status_input" => "Status Input",
"tabel_anggotakelas" => "Anggota Rombel",
"tabel_antar_mapel" => "Nilai Antar Mapel",
"tabel_asesor" => "Asesor",
"tabel_capaiantp" => "Capaian TP",
"tabel_cat_wali" => "Catatan Wali Kelas",
"tabel_deskripsi" => "Nilai Deskripsi Capaian",
"tabel_deskripsi_tengah" => "Deskripsi Capaian Tengan Semester",
"tabel_dudi" => "Data DuDi",
"tabel_ekstra" => "Data Ekskul",
];
$this->simpan_file_json($tables, 4);
$tables = [
"tabel_indikator_skkni" => "Indikator SKKNI",
"tabel_info" => "Info",
"tabel_jurusan" => "Data Jurusan",
"tabel_kehadiran" => "Data Kehadiran",
"tabel_kelas" => "Data Rombel",
"tabel_kelas_ekskul" => "Data Rombel Ekskul",
"tabel_kenaikan" => "Data Kenaikan",
"tabel_kkm" => "Data KKM",
"tabel_kurikulum" => "Data Kurikulum",
"tabel_map_mapelk2013" => "Mapping Mapel Rapor",
"tabel_map_mapelskl" => "Mapping Mapel SKL",
"tabel_mapel" => "Data Mapel",
"tabel_nilai_dudi" => "Nilai DuDi",
];
$this->simpan_file_json($tables, 5);
$tables = [
"tabel_nilai_ekstra" => "Nilai Ekskul",
"tabel_nilai_formatif" => "Nilai Formatif",
"tabel_nilai_karakter" => "Nilai Karakter",
"tabel_nilai_p3guru" => "Nilai P3 Guru",
"tabel_nilai_ukk" => "Nilai UKK",
"tabel_nilaiakhir" => "Nilai Rapor",
"tabel_nilaiskl" => "Nilai SKL",
"tabel_nilaitengah" => "Nilai PTS",
"tabel_paket_kompetensi" => "Data Paket Kompetensi",
"tabel_pembelajaran" => "Data Pembelajaran",
"tabel_ptk" => "Data PTK",
"tabel_ptk_pelengkap" => "Data Pelengkap PTK",
"tabel_ptk_terdaftar" => "Data PTK Aktif",
];
$this->simpan_file_json($tables, 6);
$tables = [
"tabel_ptspas" => "Nilai Sumatif",
"tabel_registrasi_pd" => "Registrasi PD",
"tabel_rombel_skil" => "Kelompok Skill Pasport",
"tabel_sekolah" => "Data Sekolah",
"tabel_setskl" => "Setting SKL",
"tabel_siswa" => "Data Siswa",
"tabel_siswa_pelengkap" => "Data Pelengkap Siswa",
"tabel_skilpassport" => "Data Skill Pasport",
"tabel_sklidentitas" => "Data Identitas SKL",
"tabel_sskkd_skkni" => "Data SKKNI",
"tabel_sumatif_pas" => "Data Nilai Sumatif",
"tabel_tanggalrapor" => "Tanggal Rapor",
"tabel_targetcapaian" => "Target Capaian",
"tabel_targetcptp" => "Target Capaian TP",
"tabel_unit_kompetensi" => "Unit Kompetensi",
"user_login" => "Data Pengguna",
];
$this->simpan_file_json($tables, 7);
$tables = [
"tambah_koneksi" => "Data Koneksi",
"tambah_koneksi_ext" => "Data Integrasi",
"tambah_logo_ttdkepsek" => "Data TTD Kepsek",
"tambah_mapel_gabung" => "Data Mapel Gabung",
"tambah_tabel_nilai_klaper" => "Data Link Buku Induk",
"tambah_tabel_nilai_pkl" => "Data Link Nilai PKL",
"tambah_tabel_nilai_rapor" => "Data Link Nilai Rapor",
"tambah_tabel_nilai_rapor_pts" => "Data Link Rapor PTS",
"tambah_tabel_nilai_skl" => "Data Link Nilai SKL",
"tambah_tabel_nilai_tengah" => "Data Link Nilai Sumatif",
"tambah_tabel_nilaiprojek" => "Data Link Nilai Projek",
"tambah_tabel_pelengkap" => "Data Link Pelengkap Rapor",
"tambah_tabel_sertifikat" => "Data Link Sertifikat UKK",
"tambah_tabel_transkrip" => "Data Link Transkrip",
"tambah_tabel_transkrip_nilai" => "Data Link Transkrip Nilai",
"tambah_tbl_kehadiran_ext" => "Integrasi Kehadiran",
"tambah_tbl_nilai_ext" => "Integrasi Rapor",
"tambah_tbl_nilaiekskul_ext" => "Integrasi Ekskul",
"tambah_tbl_nilaip3_k13" => "Integrasi P5",
"tambah_ttd_ptk" => "Data TTD Wali Kelas",
];
$this->simpan_file_json($tables, 8);
$zip = new ZipArchive();
$path = FCPATH . 'backup/';
$zip_name = $path . 'file_raporsptotal.rsp';
$files = [
$path . 'file_json1.json',
$path . 'file_json2.json',
$path . 'file_json3.json',
$path . 'file_json4.json',
$path . 'file_json5.json',
$path . 'file_json6.json',
$path . 'file_json7.json',
$path . 'file_json8.json'
];
if ($zip->open($zip_name, ZipArchive::CREATE) === TRUE) {
foreach ($files as $file) {
$file_name = basename($file);
$zip->addFile($file, $file_name);
}
$zip->close();
}
foreach ($files as $file) {
if (file_exists($file)) unlink($file);
}
$file_name = 'backup_' . $sekolah->npsn . date('Ymd') . '_.msq';
$zip_name = $path . $file_name;
$file = $path . 'file_raporsptotal.rsp';
if ($zip->open($zip_name, ZipArchive::CREATE) === TRUE) {
$zip->addFile($file, 'file_raporsptotal.rsp');
$zip->close();
}
if (file_exists($file)) unlink($file);
$data['download_link'] = base_url('backup/' . $file_name);
$data['file_name'] = $file_name;
echo json_encode($data);
}
public function restore()
{
$data['content'] = $this->load->view('admin/backup/restore_all', null, true);
$this->load->view('master', $data);
}
public function proses_restore()
{
ini_set('memory_limit', '10240M');
ini_set('max_execution_time', 3600);
$filename = $_FILES['file']['name'];
if (move_uploaded_file($_FILES['file']['tmp_name'], $filename)) {
$zip = new ZipArchive();
if ($zip->open($filename) === true) {
$zip->extractTo('zip');
$zip->close();
}
unlink($filename);
}
$zipfile = FCPATH . 'zip/file_raporsptotal.rsp';
$zip = new ZipArchive;
if ($zip->open($zipfile) === TRUE) {
$zip->extractTo(FCPATH . 'zip');
$zip->close();
unlink($zipfile);
}
for ($i = 1; $i <= 8; $i++) {
$json_file = FCPATH . 'zip/file_json' . $i . '.json';
$json_data = file_get_contents($json_file);
$data = json_decode($json_data, true);
foreach ($data as $item) {
if ($item['jumlah'] > 0) {
$tableName = $item['tabel'];
$itemData = $item['data'];
if (is_array($itemData) && !empty($itemData)) {
$columns = array_keys($itemData[0]);
$chunkedData = array_chunk($itemData, 5000);
foreach ($chunkedData as $chunk) {
$query = "INSERT IGNORE INTO $tableName (";
$query .= implode(", ", $columns);
$query .= ") VALUES ";
$values = [];
foreach ($chunk as $row) {
$values[] = "(" . implode(", ", array_map(function ($value) {
return is_null($value) ? 'NULL' : "'" . vldstr($value) . "'";
}, $row)) . ")";
}
$query .= implode(", ", $values) . ";";
mquery($query);
}
}
}
}
unlink($json_file);
}
echo 'Sudah selesai melakukan restore data';
}
private function get_data($table)
{
return query($table)->result_array();
}
private function simpan_file_json($tables, $nomor)
{
$id_sekolah = get_session('sekolahid');
$json_data = array();
foreach ($tables as $tabel => $nm_tabel) {
$data = $this->get_data($tabel);
$table_data = array(
"id_sekolah" => $id_sekolah,
"nm_tabel" => $nm_tabel,
"semester" => null,
"tahun" => "",
"tabel" => $tabel,
"jumlah" => count($data),
"data" => $data
);
$json_data[] = $table_data;
}
$json_result = json_encode($json_data, JSON_PRETTY_PRINT);
$file_path = FCPATH . 'backup/file_json' . $nomor . '.json';
file_put_contents($file_path, $json_result);
}
}
Function Calls
None |
Stats
MD5 | 6b3a418e841cc3e76c9c0001cba13c46 |
Eval Count | 0 |
Decode Time | 78 ms |