Guest User

Untitled

a guest
Jan 23rd, 2018
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 9.71 KB | None | 0 0
  1. <?php
  2. if(file_exists('Settings')) {
  3.     $config = parse_ini_file('./Settings') or die("Error parsing Settings file!\n");
  4. }
  5. else {
  6.     die("'Settings' file is missing.\n");
  7. }
  8.  
  9. $Username = $argv[1];
  10. $Password = $argv[2];
  11. $Hash = md5($Password);
  12.  
  13. //Establish MySQL Connection
  14. mysql_connect($config['Host'], $config['User'], $config['Pass']) or die(sprintf("%s\n", mysql_error()));
  15. mysql_select_db($config['Database']) or die(sprintf("%s\n", mysql_error()));
  16.  
  17. //Time to authenticate $Username
  18. $sql = "SELECT * FROM accs WHERE name = '" . mysql_real_escape_string($Username) . "'";
  19. $grabMod = mysql_query($sql);
  20. $rowMod = mysql_num_rows($grabMod);
  21. if($rowMod < 1) die(sprintf("%s does not exist!\n", $Username));
  22. unset($rowMod);
  23.  
  24. $grabMod_ = mysql_fetch_assoc($grabMod);
  25. extract($grabMod_);
  26.  
  27. if($Hash != $password) die(sprintf("Incorrect password for %s\n", $Username));
  28. $modCrumbs = unserialize($crumbs);
  29.  
  30. $modCrumbs['isModerator'] ? chr(0) : die(sprintf("[%s]%s is not a moderator!\n", 'ERROR', $Username));
  31. $modCrumbs['isBanned_'] ? die(sprintf("[%s]%s is banned.\n", 'ERROR', $Username)) : chr(0);
  32.  
  33. EnterCommand:
  34. echo "Enter a command: \n";
  35. $arg = trim(fgets(STDIN));
  36.  
  37. $args = explode(" ", $arg);
  38. $cmd = $args[0];
  39.  
  40. switch(strtoupper($cmd)) {
  41.     case '!MAKE':
  42.         if(strlen($args[1]) > 12) {
  43.             echo "Username is too long.\n\n";
  44.             goto EnterCommand;
  45.         }
  46.         if(strlen($args[2]) <= 2) {
  47.             echo "Password is too short.\n\n";
  48.             goto EnterCommand;
  49.         }
  50.         $Username = $args[1];
  51.         $Password = $args[2];
  52.         $Email = $args[3];
  53.         $Colour = $args[4];
  54.         if(!$Colour || $Colour < 1 || $Colour >= 14) {
  55.             $Colour = rand(1, 14);
  56.         }
  57.        
  58.         $query = sprintf("SELECT * FROM `accs` WHERE `name` = '%s'",
  59.         mysql_real_escape_string($Username));
  60.         $doQuery = mysql_query($query);
  61.         $userCheck = mysql_num_rows($doQuery);
  62.         if($userCheck > 0) {
  63.             echo sprintf("The name %s is taken.\n\n", $Username);
  64.             goto EnterCommand;
  65.         }
  66.         $player = array(
  67.                 'email' => $Email,
  68.                 'registerIP' => "127.0.0.1",
  69.                 'registertime' => time(),
  70.                 'color' => $Colour,
  71.                 'head'  => 0,
  72.                 'face'  => 0,
  73.                 'neck'  => 0,
  74.                 'body'  => 0,
  75.                 'hands' => 0,
  76.                 'feet'  => 0,
  77.                 'pin'   => 413,
  78.                 'photo' => 0,
  79.                 'items' => array(1, 444),
  80.                 'coins' => 10000,
  81.                 'isModerator'   =>  false,
  82.                 'isBanned_' => false,
  83.                 'buddies' => array(),
  84.                 'ignore' => array(),
  85.                 'stamps' => array(),
  86.                 'stampColor' => 1,
  87.                 'stampHighlight' => 1,
  88.                 'stampPattern' => -1,
  89.                 'stampIcon' => 1,
  90.                 'igloo' => 1,
  91.                 'music' => 0,
  92.                 'floor' => 0,
  93.                 'furniture' => array(),
  94.                 'roomFurniture' => "",
  95.                 'mood' => ".:Newbie:.",
  96.         );
  97.        
  98.         $query = sprintf("INSERT INTO  `accs` (`ID`,`name`,`crumbs`,`password`)
  99.          VALUES ('NULL', '%s', '%s', '%s');",
  100.          mysql_real_escape_string($Username),
  101.          mysql_real_escape_string(serialize($player)),
  102.          mysql_real_escape_string(md5($Password)));
  103.          mysql_query($query) or print(sprintf("Error making %s (MySQL: " . mysql_error() . ")\n", $Username));
  104.          $playerID = mysql_insert_id();
  105.          echo sprintf("%s's Player ID is %s\n\n", $Username, $playerID);
  106.          goto EnterCommand;
  107.     break;
  108.    
  109.     case '!DEL':
  110.     case '!DELPENGUIN':
  111.     case '!TORCH':
  112.     case '!REMOVE':
  113.         $Username = $args[1];
  114.         if(!$Username || strlen($Username) <= 3 || strlen($Username) > 12) {
  115.             echo "Invalid username.\n\n";
  116.             goto EnterCommand;
  117.         }
  118.         $userGrab = sprintf("SELECT * FROM `accs` WHERE `name` = '%s'", mysql_real_escape_string($Username));
  119.         $userCheck = mysql_query($userGrab);
  120.         $userCheck2 = mysql_num_rows($userCheck);
  121.         if($userCheck2 < 1) {
  122.             echo sprintf("The user %s does not exist!\n\n", $Username);
  123.             goto EnterCommand;
  124.         }
  125.         $userRow = mysql_fetch_assoc($userCheck);
  126.         extract($userRow);
  127.         $userCrumbs = unserialize($crumbs);
  128.         if($userCrumbs['isModerator'] == true) {
  129.             echo "You are not allowed to delete other moderators.\n\n";
  130.             goto EnterCommand;
  131.         }
  132.         else {
  133.             $query = sprintf("DELETE FROM `accs` WHERE `name` = '%s'", mysql_real_escape_string($Username));
  134.             mysql_query($query) or print(sprintf("Error deleting player %s.\n\n", $Username));
  135.             echo sprintf("The user %s was successfully deleted!\n\n", $Username);
  136.             goto EnterCommand;
  137.         }
  138.     break;
  139.    
  140.     case '!BAN':
  141.         if(strlen($args[1]) <= 3 || !$args[1] || strlen($args[1]) > 12) {
  142.             echo "Invalid Username.\n\n";
  143.             goto EnterCommand;
  144.         }
  145.         $Username = $args[1];
  146.         $query = sprintf("SELECT * FROM `accs` WHERE `name` = '%s'", mysql_real_escape_string($Username));
  147.         $grabUser = mysql_query($query);
  148.         $userCheck = mysql_num_rows($grabUser);
  149.         if($userCheck < 1) {
  150.             echo sprintf("The user %s does not exist!\n\n", $Username);
  151.             goto EnterCommand;
  152.         }
  153.         $userRow = mysql_fetch_assoc($grabUser);
  154.         extract($userRow);
  155.         $userCrumbs = unserialize($crumbs);
  156.         if($userCrumbs['isModerator'] == true) {
  157.             echo "You are not allowed to ban other moderators.\n\n";
  158.             goto EnterCommand;
  159.         }
  160.         if($userCrumbs['isBanned_'] = true) {
  161.             echo sprintf("%s is already banned!\n\n", $Username);
  162.             goto EnterCommand;
  163.         }
  164.         else {
  165.             $userCrumbs['isBanned_'] = true;
  166.             $update = sprintf("UPDATE `accs` SET `crumbs` = '%s' WHERE `name` = '%s'", mysql_real_escape_string(serialize($userCrumbs)), mysql_real_escape_string($Username));
  167.             mysql_query($update) or print(sprintf("Error updating user: %s's crumbs.\n\n", $Username));
  168.             echo sprintf("%s was successfully banned!\n\n", $Username);
  169.             goto EnterCommand;
  170.         }
  171.     break;
  172.    
  173.     case '!UNBAN':
  174.         if(strlen($args[1]) <= 3 || !$args[1] || strlen($args[1]) > 12) {
  175.             echo "Invalid Username.\n\n";
  176.             goto EnterCommand;
  177.         }
  178.         $Username = $args[1];
  179.         $query = sprintf("SELECT * FROM `accs` WHERE `name` = '%s'", mysql_real_escape_string($Username));
  180.         $userGrab = mysql_query($query);
  181.         $userCheck = mysql_num_rows($userGrab);
  182.         if($userCheck < 1) {
  183.             echo sprintf("The user %s does not exist!\n\n", $Username);
  184.             goto EnterCommand;
  185.         }
  186.         $userRow = mysql_fetch_assoc($userGrab);
  187.         extract($userRow);
  188.         $userCrumbs = unserialize($crumbs);
  189.         if($userCrumbs['isBanned_'] == false) {
  190.             echo sprintf("%s is not banned.\n\n", $Username);
  191.             goto EnterCommand;
  192.         }
  193.         else {
  194.             $userCrumbs['isBanned_'] = false;
  195.             $update = sprintf("UPDATE `accs` SET `crumbs` = '%s' WHERE `name` = '%s'", mysql_real_escape_string(serialize($userCrumbs)), mysql_real_escape_string($Username));
  196.             mysql_query($update) or print(sprintf("Error updating user: %s's crumbs.\n\n", $Username));
  197.             echo sprintf("%s was successfully unbanned!\n\n", $Username);
  198.             goto EnterCommand;
  199.         }
  200.     break;
  201.    
  202.     case '!GID':
  203.         if(strlen($args[1]) <= 3 || !$args[1] || strlen($args[1]) > 12) {
  204.             echo "Invalid Username.\n\n";
  205.             goto EnterCommand;
  206.         }
  207.         $Username = $args[1];
  208.         $query = sprintf("SELECT * FROM `accs` WHERE `name` = '%s'", mysql_real_escape_string($Username));
  209.         $userGrab = mysql_query($query);
  210.         $userCheck = mysql_num_rows($userGrab);
  211.         if($userCheck < 1) {
  212.             echo sprintf("The user %s does not exist!\n\n", $Username);
  213.             goto EnterCommand;
  214.         }
  215.         $userRow = mysql_fetch_assoc($userGrab);
  216.         extract($userRow);
  217.         echo sprintf("%s's Player ID is %s\n\n", $Username, $ID);
  218.         goto EnterCommand;
  219.     break;
  220.    
  221.     case '!GNAME':
  222.         if(!$args[1] || !is_numeric($args[1])) {
  223.             echo "Invalid Player ID.\n\n";
  224.             goto EnterCommand;
  225.         }
  226.         $ID = $args[1];
  227.         $query = sprintf("SELECT * FROM `accs` WHERE `ID` = '%s'", mysql_real_escape_string($ID));
  228.         $idGrab = mysql_query($query);
  229.         $idCheck = mysql_num_rows($idGrab);
  230.         if($idCheck < 1) {
  231.             echo sprintf("Nobody with the ID %s exists!\n\n", $ID);
  232.             goto EnterCommand;
  233.         }
  234.         $idRow = mysql_fetch_assoc($idGrab);
  235.         extract($idRow);
  236.         echo sprintf("%s's Player Name is %s.\n\n", $ID, $name);
  237.         goto EnterCommand;
  238.     break;
  239.    
  240.     case '!GRAB':
  241.         if(strlen($args[1]) <= 3 || !$args[1] || strlen($args[1]) > 12) {
  242.             echo "Invalid Username.\n\n";
  243.             goto EnterCommand;
  244.         }
  245.         $Username = $args[1];
  246.         $query = sprintf("SELECT * FROM `accs` WHERE `name` = '%s'", mysql_real_escape_string($Username));
  247.         $userGrab = mysql_query($query);
  248.         $userCheck = mysql_num_rows($userGrab);
  249.         if($userCheck < 1) {
  250.             echo sprintf("The user %s does not exist!\n\n", $Username);
  251.             goto EnterCommand;
  252.         }
  253.         $userRow = mysql_fetch_assoc($userGrab);
  254.         extract($userRow);
  255.         $playerCrumbs = unserialize($crumbs);
  256.         echo sprintf("\n--%s's Player Information\n", $Username);
  257.         echo sprintf("ID: %s\n", $ID);
  258.         echo sprintf("Username: %s\n", $Username);
  259.         echo sprintf("Email: %s\n", $playerCrumbs['email']);
  260.         echo sprintf("Register IP: %s\n", $playerCrumbs['registerIP']);
  261.         echo sprintf("Register Time: %s\n\n", $playerCrumbs['registertime']);
  262.         echo sprintf("Color: %s\n", $playerCrumbs['color']);
  263.         echo sprintf("Head: %s\n", $playerCrumbs['head']);
  264.         echo sprintf("Face: %s\n", $playerCrumbs['face']);
  265.         echo sprintf("Neck: %s\n", $playerCrumbs['neck']);
  266.         echo sprintf("Body: %s\n", $playerCrumbs['body']);
  267.         echo sprintf("Hands: %s\n", $playerCrumbs['hands']);
  268.         echo sprintf("Feet: %s\n", $playerCrumbs['feet']);
  269.         echo sprintf("Pin: %s\n", $playerCrumbs['pin']);
  270.         echo sprintf("Photo: %s\n\n", $playerCrumbs['photo']);
  271.         echo sprintf("Inventory: %s\n\n", implode(',', $playerCrumbs['items']));
  272.         echo sprintf("Coins: %s\n", $playerCrumbs['coins']);
  273.         echo sprintf("isModerator: %s\n", $playerCrumbs['isModerator'] ? 'true' : 'false');
  274.         echo sprintf("isBanned: %s\n", $playerCrumbs['isBanned_'] ? 'true' : 'false');
  275.         echo sprintf("Buddies: %s\n", $playerCrumbs['buddies'] ? $playerCrumbs['buddies'] : 'N/A');
  276.         echo sprintf("Stamps: %s\n", $playerCrumbs['stamps'] ? $playerCrumbs['stamps'] : 'N/A');
  277.         echo sprintf("Mood: %s\n\n", $playerCrumbs['mood']);
  278.         goto EnterCommand;
  279.     break;
  280.    
  281.     default:
  282.         echo(sprintf("The command: %s was not recognized.\n\n", $cmd));
  283.         goto EnterCommand;
  284.     break;
  285. }
  286.  
  287. ?>
Add Comment
Please, Sign In to add comment