Advertisement
Squito

SNMP

Sep 6th, 2017
356
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.02 KB | None | 0 0
  1. <?PHP
  2. set_time_limit(0);
  3. //include("../connect.php");
  4. $conn=mysqli_connect("localhost", "*", "*", "*");
  5. $query=mysqli_query($conn, "SELECT id, ip, name FROM printers ORDER BY INET_ATON(ip)");
  6. while($list=mysqli_fetch_assoc($query))
  7. {
  8.     if(snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.1.1.0"))
  9.     {
  10.         if(!snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.12.1.1.4.1.2"))
  11.         {
  12.             $color['black']=preg_replace("/[^0-9]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.11.1.1.9.1.1")[0]);
  13.             $color['cyan']="NA";
  14.             $color['magenta']="NA";
  15.             $color['yellow']="NA";
  16.         }
  17.         else
  18.         {
  19.             $color1=preg_replace("/[^a-z]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.12.1.1.4.1.1")[0]);
  20.             $color2=preg_replace("/[^a-z]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.12.1.1.4.1.2")[0]);
  21.             $color3=preg_replace("/[^a-z]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.12.1.1.4.1.3")[0]);
  22.             $color4=preg_replace("/[^a-z]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.12.1.1.4.1.4")[0]);
  23.             $color[$color1]=preg_replace("/[^0-9]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.11.1.1.9.1.1")[0]);
  24.             $color[$color2]=preg_replace("/[^0-9]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.11.1.1.9.1.2")[0]);
  25.             $color[$color3]=preg_replace("/[^0-9]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.11.1.1.9.1.3")[0]);
  26.             $color[$color4]=preg_replace("/[^0-9]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.11.1.1.9.1.4")[0]);
  27.         }
  28.         if(strstr($list['name'], "M300"))
  29.         {
  30.             $color['black']=preg_replace("/[^0-9]/", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.11.1.1.9.1.2")[0]);
  31.         }
  32.         if($color['black']=="")
  33.         {
  34.             $color['black']="NA";
  35.         }
  36.  
  37.         if(snmpget($list['ip'], "public", "iso.3.6.1.4.1.1347.43.10.1.1.12.1.1")=="")
  38.         {
  39.             $pages=preg_replace("/[^0-9]/", "", str_ireplace("counter32", "", snmpwalk($list['ip'], "public", "iso.3.6.1.2.1.43.10.2.1.4.1.1")[0]));
  40.         }
  41.         else
  42.         {
  43.             $pages=preg_replace("/[^0-9]/", "", snmpget($list['ip'], "public", "iso.3.6.1.4.1.1347.43.10.1.1.12.1.1"));
  44.         }
  45.         $logdate=date("YmdHi");
  46.         $today=date("Ymd");
  47.         $prep=mysqli_stmt_init($conn);
  48.         $finder=mysqli_query($conn, "SELECT id FROM statistics WHERE printerid='".$list['id']."' AND logdate LIKE '".$today."%'");
  49.         if(mysqli_num_rows($finder)==1)
  50.         {
  51.             $element=mysqli_fetch_assoc($finder);
  52.             mysqli_stmt_prepare($prep, "UPDATE statistics SET printerid=?, cyan=?, magenta=?, yellow=?, black=?, pages=?, logdate=? WHERE id=?");
  53.             mysqli_stmt_bind_param($prep, "issssiii", $list['id'], $color['cyan'], $color['magenta'], $color['yellow'], $color['black'], $pages, $logdate, $element['id']);
  54.         }
  55.         else
  56.         {
  57.             mysqli_stmt_prepare($prep, "INSERT INTO statistics (printerid, cyan, magenta, yellow, black, pages, logdate) VALUES (?, ?, ?, ?, ?, ?, ?)");
  58.             mysqli_stmt_bind_param($prep, "issssis", $list['id'], $color['cyan'], $color['magenta'], $color['yellow'], $color['black'], $pages, $logdate);
  59.         }
  60.         mysqli_stmt_execute($prep);
  61.         mysqli_stmt_close($prep);
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement