request('add_user', 'POST', [ 'jenis' => 'Hotspot', 'username' => 'TESTVCR', 'password' => 'TESTVCR', 'groupname' => 'paket-6-device-8', 'nasgroupname' => 'server8' ]); // $radius->request('add_user', 'POST', [ // 'jenis' => 'DHCP', // 'username' => 'b0:a7:b9:5e:d9:1d', // 'groupname' => 'paket-upto-50-mbps-8', // 'nasgroupname' => 'server8' // ]); // $radius = new CrudRadiusServer(); // $radius->request('delete_user', 'DELETE', [ // 'username' => 'testadd' // ]); // include "/www/wwwroot/bilspro/config/connect.php"; // include "../config/connect.php"; // // Ambil data dari tabel setting_mikrotik // $stmt = $pdo->prepare("SELECT id, pppa, id_data_server, nama FROM setting_mikrotik WHERE pppa != ''"); // $stmt->execute(); // $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); // if ($rows) { // foreach ($rows as $row) { // $id = $row['id']; // $pppa = substr($row['pppa'],0,-1); // $entries = explode('|', $pppa); // // Buat array hasil dari $pppa // $result = []; // foreach ($entries as $entry) { // // Pecah setiap entry berdasarkan '_' // list($akun, $ip_address) = explode('_', $entry); // $result[] = [ // 'akun' => $akun, // 'ip_address' => $ip_address // ]; // } // // Ambil data akun dari database // $dataakun = []; // $stmtPel = $pdo->prepare("SELECT id, akun FROM pelanggan WHERE id_setting_mikrotik = :id"); // $stmtPel->bindValue(':id', $id, PDO::PARAM_INT); // Pastikan parameter tipe aman // $stmtPel->execute(); // $pelanggan = $stmtPel->fetchAll(PDO::FETCH_ASSOC); // // Iterasi data pelanggan // foreach ($pelanggan as $key) { // if (isset($key['akun'], $key['id'])) { // Pastikan kedua kunci ada // $dataakun[] = [ // "akun" => $key['akun'], // "id" => $key['id'] // ]; // } // } // // Ambil hanya daftar akun dari $dataakun // $akunDataakun = array_column($dataakun, 'akun'); // // Cari akun yang ada di $result tetapi tidak ada di $dataakun // $akunTidakAdaDiDataakun = array_filter($result, function ($item) use ($akunDataakun) { // return !in_array($item['akun'], $akunDataakun); // }); // // Hasil akhir // $hasil = [ // 'akun_unmanage' => $akunTidakAdaDiDataakun // ]; // $ppp_unmanage = json_encode($hasil); // $updateStmt = $pdo->prepare("UPDATE setting_mikrotik SET ppp_unmanage = :ppp_unmanage WHERE id = :id"); // $updateStmt->execute([':ppp_unmanage' => $ppp_unmanage, ':id' => $id]); // // Output hasil // // echo "
";
//         // print_r($hasil);
        
        
        
//         // $dataakun = [];
//         // // Ambil semua akun pelanggan dalam satu query
//         // $stmtPel = $pdo->prepare("SELECT id, akun FROM pelanggan WHERE id_setting_mikrotik = :id");
//         // $stmtPel->bindValue(':id', $id);
//         // $stmtPel->execute();
//         // $pelanggan = $stmtPel->fetchAll(PDO::FETCH_ASSOC);
        
//         // foreach ($pelanggan as $key) {
//         //     $dataakun[] = array("akun" => $key['akun'], "id" => $key['id']);
//         // }

//         // $time = date('Y-m-d H:i:s');
//         // $updates = [];
//         // $updateStatusOff = [];

//         // foreach ($pelanggan as $key) {
//         //     $akun = $key['akun'];
//         //     $idakun = $key['id'];

//         //     // Cek apakah akun ada dalam pppa
//         //     if (strpos($pppa, $akun) !== false) {
//         //         // Cari nama awalan dan ambil bagian data setelahnya
//         //         $cari00 = stristr($pppa, $akun);
//         //         // Ambil data hingga tanda '|'
//         //         $cari02 = strtok($cari00, "|");
//         //         // Rubah ke array
//         //         $data = explode("_", $cari02);

//         //         if (count($data) === 2) {
//         //             $ipadd = $data[1];

//         //             // Siapkan data untuk update
//         //             $updates[] = [
//         //                 'id' => $idakun,
//         //                 'status' => 'On',
//         //                 'ip_address' => $ipadd,
//         //                 'time' => $time,
//         //             ];
//         //         }
//         //     } else {
//         //         $updateStatusOff[] = $idakun;
//         //     }
//         // }
//         // echo $row['nama'] . " =>
\n"; // // // Update status koneksi yang 'On' sekaligus // // if (!empty($updates)) { // // $updateQuery = "UPDATE pelanggan SET status_koneksi = CASE id "; // // foreach ($updates as $update) { // // $updateQuery .= "WHEN {$update['id']} THEN 'On' "; // // } // // $updateQuery .= "END, ip_address = CASE id "; // // foreach ($updates as $update) { // // $updateQuery .= "WHEN {$update['id']} THEN '{$update['ip_address']}' "; // // } // // $updateQuery .= "END, time_update = '{$time}' WHERE id IN (" . implode(',', array_column($updates, 'id')) . ")"; // // $pdo->exec($updateQuery); // // } // // // Update status koneksi yang 'Off' // // if (!empty($updateStatusOff)) { // // $updateOffQuery = "UPDATE pelanggan SET status_koneksi = 'Off' WHERE id IN ('" . implode("', '", $updateStatusOff) . "')"; // // $pdo->exec($updateOffQuery); // // } // } // } else { // echo "No data found.\n"; // } // ?>