connect(); $dbhSpota = $conn->connectSpota(); $sql = 'SELECT idTugasAkhir FROM tugas_akhir'; $stmt = $dbh->prepare($sql); $stmt->execute(); $listTugasAkhirDb = []; $listIdPraoutline = []; while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $idDb = $row['idTugasAkhir']; $idPraoutlineDb = $row['idPraoutline']; $listTugasAkhirDb[$idDb] = true; $listIdPraoutline[$idPraoutlineDb] = true; } $tahun = date('Y'); $tahunTerakhir = $tahun - 7; //$data = file_get_contents('http://spota.untan.ac.id/steven/API/getListTugasAkhir.php?secret=in14d4lahP4ssWordSP0TA!12!'); //$url = "http://spota.untan.ac.id/steven/API/getListTugasAkhir.php?withoutKep&mulaiTahun=$tahunTerakhir&secret=in14d4lahP4ssWordSP0TA!12!"; /** $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($ch); curl_close($ch); */ //$data = file_get_contents($url); //$decoded = json_decode($data, 1); //$whereKep = " AND kep_akhir = '1' "; $whereKep = ""; $whereTahunMasuk = " AND thnmasuk >= $tahunTerakhir "; $sql = "SELECT t.*, t1.id as sidang FROM (SELECT tbrekaphasil.*, tbmhs.idmhs, tbmhs.thnmasuk, tbmhs.nmLengkap FROM tbrekaphasil LEFT JOIN tbmhs ON tbrekaphasil.nim = tbmhs.nim WHERE 1=1 $whereTahunMasuk $whereKep) t LEFT JOIN (SELECT * FROM tbjadwal WHERE jenis = 'Sidang' AND publish = 'Y') t1 ON t.idmhs = t1.idMhs"; $stmt = $dbhSpota->prepare($sql); $stmt->execute(); $data = []; while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $id = $row['id']; $nim = $row['nim']; $judul = $row['judul_final']; $pemb1 = $row['pemb1']; $pemb2 = $row['pemb2']; $peng1 = $row['peng1']; $peng2 = $row['peng2']; $semester = $row['semester']; $tahun = $row['tahun_ajaran']; $tanggalKep = $row['tgl_kep']; $waktuKep = $row['wkt_kep']; $idPraoutline = $row['idpraoutline']; $keputusan = $row['kep_akhir']; $sidang = 1; if (empty($row['sidang'])) { $sidang = 0; } if ($row['thnmasuk'] < 2015) { $sidang = 1; } array_push($data, [ 'id' => $id, 'judul' => $judul, 'nim' => $nim, 'nama' => $row['nmLengkap'], 'pemb1' => $pemb1, 'pemb2' => $pemb2, 'peng1' => $peng1, 'peng2' => $peng2, 'semester' => $semester, 'tahun' => $tahun, 'tanggalKeputusan' => $tanggalKep, 'waktuKeputusan' => $waktuKep, 'idPraoutline' => $idPraoutline, 'keputusan' => $keputusan, 'sidang' => $sidang, ]); } $decoded = ['data' => $data]; $banyakData = sizeof($decoded['data']); print_r($data); for ($i = 0; $i < $banyakData; ++$i) { $tugasAkhir = $decoded['data'][$i]; $id = $tugasAkhir['id']; $nim = $tugasAkhir['nim']; $judul = $tugasAkhir['judul']; $pemb1 = $tugasAkhir['pemb1']; $pemb2 = $tugasAkhir['pemb2']; $peng1 = $tugasAkhir['peng1']; $peng2 = $tugasAkhir['peng2']; $semester = $tugasAkhir['semester']; $tahun = $tugasAkhir['tahun']; $tanggalKeputusan = $tugasAkhir['tanggalKeputusan']; $waktuKeputusan = $tugasAkhir['waktuKeputusan']; $idPraoutline = $tugasAkhir['idPraoutline']; $keputusan = $tugasAkhir['keputusan']; $sidang = $tugasAkhir['sidang']; if (!isset($listTugasAkhirDb[$id])) { if(isset($listIdPraoutline[$idPraoutline])){ continue; } $sql = 'INSERT INTO tugas_akhir(idTugasAkhir, nim, judul, pemb1, pemb2, peng1, peng2, semester, tahunAjaran, tanggalKeputusan, waktuKeputusan, idPraoutline, keputusan, selesai) VALUES (:id, :nim, :judul, :pemb1, :pemb2, :peng1, :peng2, :semester, :tahun, :tanggalKeputusan, :waktuKeputusan, :idPraoutline, :keputusan, :sidang)'; $stmt = $dbh->prepare($sql); $stmt->bindParam(':id', $id); $stmt->bindParam(':nim', $nim); $stmt->bindParam(':judul', $judul); $stmt->bindParam(':pemb1', $pemb1); $stmt->bindParam(':pemb2', $pemb2); $stmt->bindParam(':peng1', $peng1); $stmt->bindParam(':peng2', $peng2); $stmt->bindParam(':semester', $semester); $stmt->bindParam(':tahun', $tahun); $stmt->bindParam(':tanggalKeputusan', $tanggalKeputusan); $stmt->bindParam(':waktuKeputusan', $waktuKeputusan); $stmt->bindParam(':idPraoutline', $idPraoutline); $stmt->bindParam(':keputusan', $keputusan); $stmt->bindParam(':sidang', $sidang); $stmt->execute(); } else { $sql = 'UPDATE tugas_akhir SET nim = :nim, judul = :judul, pemb1 = :pemb1, pemb2 = :pemb2, peng1 = :peng1, peng2 = :peng2, semester = :semester, tahunAjaran = :tahun, tanggalKeputusan = :tanggalKeputusan, waktuKeputusan = :waktuKeputusan, idPraoutline = :idPraoutline, keputusan = :keputusan, selesai = :sidang WHERE idTugasAkhir = :id'; $stmt = $dbh->prepare($sql); $stmt->bindParam(':id', $id); $stmt->bindParam(':nim', $nim); $stmt->bindParam(':judul', $judul); $stmt->bindParam(':pemb1', $pemb1); $stmt->bindParam(':pemb2', $pemb2); $stmt->bindParam(':peng1', $peng1); $stmt->bindParam(':peng2', $peng2); $stmt->bindParam(':semester', $semester); $stmt->bindParam(':tahun', $tahun); $stmt->bindParam(':tanggalKeputusan', $tanggalKeputusan); $stmt->bindParam(':waktuKeputusan', $waktuKeputusan); $stmt->bindParam(':idPraoutline', $idPraoutline); $stmt->bindParam(':keputusan', $keputusan); $stmt->bindParam(':sidang', $sidang); $stmt->execute(); } } echo json_encode(['status' => 1, 'msg' => 'ok']);