Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- ####################################################
- #
- # Simple Network Monitoring
- # Rizal Khilman - fb.me/rizal.ofdraw
- # codinger-mini.blogspot.com
- #
- ####################################################
- include '../../lib/db/dbconfig.php';
- $d_blok=$conn->query("SELECT (id_blok) FROM blok WHERE pusat_client='1'")->fetch_assoc();
- $id_st = $d_blok['id_blok'];
- $limit = 20; // jumlah Ip per Halaman
- $start = 1;
- $slice = 9;
- $self_server = "./home&id=$id_st";
- $q = "SELECT * FROM client WHERE id_blok='$id_st'";
- $r = $conn->query($q);
- $totalrows = $r->num_rows;
- if(!isset($_GET['pn']) || !is_numeric($_GET['pn'])){
- $page = 1;
- } else {
- $page = $_GET['pn'];
- }
- $numofpages = ceil($totalrows / $limit);
- $limitvalue = $page * $limit - ($limit);
- $q = "SELECT * FROM client WHERE id_blok='$id_st' LIMIT $limitvalue, $limit";
- //jika user nakal paging lebih dari data yg dimiliki
- $cek_page = $conn->query($q);
- if ($cek_page->num_rows != 0) {
- if ($r = $conn->query($q)) {
- //Outputnya disini
- if ($r->num_rows!==0) {
- echo "
- <div class=''>
- <table class='table table-bordered'>
- <thead>
- <tr>
- <th align=center>No</th>
- <th align=center>Printer Location</th>
- <th align=center>Model</th>
- <th align=center>IP Printer</th>
- <th align=center>Serial Number</th>
- <th align=center>Status</th>
- <th align=center>Action</th>
- </tr>
- </thead>
- <tbody>";
- $no=0;
- while ($client=$r->fetch_assoc()) {
- extract($client);
- $ip= "$ip_client";
- // Query untuk update status client
- $sql = "UPDATE client SET status_client=? WHERE id_client='$id_client'";
- exec("ping -n 1 $ip_client -w 5", $output['ke'.$ip_client],$status);
- //exec("/bin/ping -c2 -w2 $ip", $output, $status); //untuk os linux
- if($status==0) {
- $cut = explode(":", $output['ke'.$ip_client]['2']);
- $hasil = trim($cut['0'], " .");
- switch ($hasil) {
- case 'Request timed out':
- $log = "Request timed out";
- if ($status_client !== "$log") {
- // Eksekusi query update status client
- if ($statement = $conn->prepare($sql)) {
- $statement->bind_param("s", $log);
- $statement->execute();
- //echo "Dirubah";
- }
- }
- $status="<button type='button' class='btn btn-success btn-circle'>
- <i class='fa fa-times'></i>
- </button> <font color='#5CB85C'></font>";
- break;
- default:
- $hasil1 = trim($cut['1'], " .");
- switch ($hasil1) {
- case 'Destination net unreachable':
- $log = "Destination net unreachable";
- if ($status_client !== "$log") {
- // Eksekusi query update status client
- if ($statement = $conn->prepare($sql)) {
- $statement->bind_param("s", $log);
- $statement->execute();
- //echo "Dirubah";
- }
- }
- $status="<button type='button' class='btn btn-success btn-circle'>
- <i class='fa fa-question-circle'></i>
- </button> <font color='#5CB85C'></font>";
- break;
- case 'Destination host unreachable':
- $log = "Destination host unreachable";
- // Eksekusi query update status client
- if ($status_client !== "$log") {
- // Eksekusi query update status client
- if ($statement = $conn->prepare($sql)) {
- $statement->bind_param("s", $log);
- $statement->execute();
- //echo "Dirubah";
- }
- }
- $status="<button type='button' class='btn btn-success btn-circle'>
- <i class='fa fa-question-circle'></i>
- </button> <font color='#5CB85C'></font>";
- break;
- default:
- $log = "Connected";
- if ($status_client !== "$log") {
- // Eksekusi query update status client
- if ($statement = $conn->prepare($sql)) {
- $statement->bind_param("s", $log);
- $statement->execute();
- //echo "Dirubah";
- }
- }
- $status = "<button type='button' class='btn btn-success btn-circle'>
- <i class='fa fa-check'></i>
- </button> ";
- break;
- }
- break;
- }
- }else{
- $log = "Disconnected";
- if ($status_client !== "$log") {
- // Eksekusi query update status client
- if ($statement = $conn->prepare($sql)) {
- $statement->bind_param("s", $log);
- $statement->execute();
- }
- }
- $status="<button type='button' class='btn btn-danger btn-circle'>
- <i class='fa fa-times'></i>
- </button> <font color='red'></font>";
- }
- $no++;
- //print_r($status);
- echo "<tr>
- <td><strong>$no</strong></td>
- <td><strong>$name_client</strong></td>
- <td align=center><strong>$model</strong></td>
- <td align=center>$ip_client</td>
- <td align=center>$sn_client</td>
- <td align=center>$status</td>
- <td>
- <button class='btn btn-primary btn-sm' data-toggle='modal' data-target='#modalEdit$id_client'>
- <i class='glyphicon glyphicon-pencil'></i>
- </button>
- <button class='btn btn-danger btn-sm' data-toggle='modal' data-target='#modalDel$id_client'>
- <i class='glyphicon glyphicon-trash'></i>
- </button>
- </td>
- </tr>";
- }
- echo "</tbody></table>";
- } else {
- echo "<div class='alert alert-warning'><strong>No data to be shown!</strong></div>";
- }
- } else {
- echo "Error encountered";
- }
- $sql_cek_row = "SELECT*FROM client WHERE id_blok='$id_st'";
- $q_cek = $conn->query($sql_cek_row);
- $hitung = $q_cek->num_rows;
- if ($hitung >= $limit) {
- echo "<hr><ul class='pagination'>";
- if($page!= 1){
- $pageprev = $page - 1;
- echo '<li><a href="'.$self_server.'&pn='.$pageprev.'"><i class="fa fa-chevron-left"></i></a></li>';
- }else{
- echo "<li><li><a href='#'><i class='fa fa-chevron-left'></i></a></li>";
- }
- if (($page + $slice) < $numofpages) {
- $this_far = $page + $slice;
- } else {
- $this_far = $numofpages;
- }
- if (($start + $page) >= 10 && ($page - 10) > 0) {
- $start = $page - 10;
- }
- for ($i = $start; $i <= $this_far; $i++){
- if($i == $page){
- echo "<li class='active'><a href='#'>".$i."</a></li> ";
- }else{
- echo '<li><a href="'.$self_server.'&pn='.$i.'">'.$i.'</a></li> ';
- }
- }
- if(($totalrows - ($limit * $page)) > 0){
- $pagenext = $page + 1;
- echo '<li><a href="'.$self_server.'&pn='.$pagenext.'"><i class="fa fa-chevron-right"></i></a></li>';
- }else{
- echo "<li><li><a href='#'><i class='fa fa-chevron-right'></i></a></li>";
- }
- echo "</ul>";
- }
- } else {
- include '../not_data.php';
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement