/dev/null 2>&1 &'); } sleep(1); $temp = $query . '&k=' . urlencode($_SESSION["username"] . "\r"); $output = rconsSynchronise($temp); if (0 < substr_count($output, 'error')){ echo json_encode(array('err'=>$output)); exit; } sleep(1); $temp = $query . '&k=' . urlencode(getpassword() . "\r"); $output = rconsSynchronise($temp); if (0 < substr_count($output, 'error')){ echo json_encode(array('err'=>$output)); exit; } sleep(1); $temp = $query . '&c=1&k=' . urlencode('rcons ' . $_POST['s'] . "\r"); } else{ $temp = $query . '&c=1&k=' . urlencode($_POST['k']); } $output = rconsSynchronise($temp); if (0 < substr_count($output, 'error')){ echo (array('err'=>$output)); } else{ $xml = simplexml_load_string($output); if ('pre' == $xml->getName()){ $output = $xml->asXML(); $output = preg_replace('/'. chr(160) . '/', ' ', $output); echo json_encode(array('term'=>$output)); } else{ echo json_encode(array('nc'=>'nc')); } } function rconsSynchronise($parameter){ $flag = false; $return = ""; $out = ""; $fp = fsockopen("127.0.0.1", 8022, $errno, $errstr, 30); if (!$fp) { return "$errstr($errno)"; } $out = "GET /u?$parameter HTTP/1.1\r\nHost: 127.0.0.1:8022\r\nConnection: Close\r\n\r\n"; fwrite($fp, $out); while(!feof($fp)){ $line = fgets($fp,1024); if (0 == strlen($line)){ continue; } if('<' == substr($line, 0, 1)){ $flag = true; $return .= $line; break; } } if ($flag){ while(!feof($fp)){ $return .= fgets($fp, 1024); } } return ($return); } ?>