25) { $_SESSION['error'] = "Server name is too long"; header("Location: /my/servers"); exit(); } $stmt = $db->prepare("SELECT * FROM servers WHERE id = :id"); $stmt->execute([ ':id' => $_POST['id'] ]); if(!$stmt->rowCount()) { $_SESSION['error'] = "This server does not exist"; header("Location: /my/servers"); exit(); } $server = $stmt->fetch(PDO::FETCH_ASSOC); if($server['author'] != $_SESSION['siteusername']) { $_SESSION['error'] = "You are not allowed to edit this server."; header("Location: /my/servers"); exit(); } if($stmt->fetch(PDO::FETCH_ASSOC)['online'] == 1) { $_SESSION['error'] = "You must stop your server before updating it"; header("Location: /my/servers"); exit(); } $stmt = $db->prepare("SELECT * FROM servers WHERE hosting = 2 AND online = 1"); $stmt->execute(); while($server = $stmt->fetch(PDO::FETCH_ASSOC)) { if(in_array($server['port'], $availablePorts)) { $index = array_search($server['port'], $availablePorts); if ($index !== false) { unset($availablePorts[$index]); } } } if($_POST['hosting'] == "2") { $allowedVersions = array("2010L", "2011E", "2011M"); if(!in_array($_POST['version'], $allowedVersions)) { $_SESSION['error'] = "This version is unsupported"; header("Location: /my/servers"); exit(); } $port = 0; $filename = uniqid(); $fileextension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION); if($fileextension != "rbxl" && $fileextension != "rbxlx") { $_SESSION['error'] = "Invalid file"; header("Location: /my/add-server"); exit(); } if(move_uploaded_file($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . "/assets/places/" . $filename . "." . $fileextension)) { $stmt = $db->prepare("UPDATE servers SET author = :author, filename = :filename, port = :port, maxplayers = :maxplayers, hosting = :hosting, title = :title, client = :client WHERE id = :id"); $stmt->execute([ ':author' => $_SESSION['siteusername'], ':filename' => $filename . "." . $fileextension, ':port' => $port, ':maxplayers' => $_POST['maxplayers'], ':hosting' => 2, ':title' => $_POST['name'], ':client' => $_POST['version'], ':id' => $_POST['id'] ]); } else { $_SESSION['error'] = "Error uploading file"; header("Location: /my/servers"); exit(); } } else { $allowedVersions = array("2006S", "2007E", "2007M", "2008M", "2009E", "2010L", "2011E", "2011M"); if(!in_array($_POST['version'], $allowedVersions)) { $_SESSION['error'] = "This version is unsupported"; header("Location: /my/servers"); exit(); } if(strlen($_POST['name']) > 25) { $_SESSION['error'] = "Server name is too long"; header("Location: /my/servers"); exit(); } if(!(substr($_POST['uri'], 0, strlen("novetus://")) === "novetus://")) { $_SESSION['error'] = "Invalid uri"; header("Location: /my/servers"); exit(); } if(empty(trim($_POST['ip']))) { $_SESSION['error'] = "Invalid IP"; header("Location: /my/add-server"); exit(); } if(!filter_var($_POST['ip'], FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) { $_SESSION['error'] = "Invalid IP"; header("Location: /my/add-server"); exit(); } if($_POST['ip'] == "147.185.221.16") { $_SESSION['error'] = "This IP is invalid"; header("Location: /my/servers"); exit(); } $stmt = $db->prepare("UPDATE servers SET author = :author, filename = :filename, port = :port, maxplayers = :maxplayers, hosting = :hosting, title = :title, client = :client, :ip WHERE id = :id"); $stmt->execute([ ':author' => $_SESSION['siteusername'], ':filename' => "", ':port' => $_POST['port'], ':maxplayers' => $_POST['maxplayers'], ':hosting' => 1, ':title' => $_POST['name'], ':client' => $_POST['version'], ':id' => $_POST['id'], ':ip' => $_POST['ip'] ]); } $_SESSION['success'] = "Successfully created server."; header("Location: /my/servers"); exit(); } ?>
prepare("SELECT * FROM servers WHERE author = :author ORDER BY created DESC"); $stmt->execute([':author' => $_SESSION['siteusername']]); while($server = $stmt->fetch(PDO::FETCH_ASSOC)) { $server['players'] = json_decode($server['players'], true); ?>

Client:

/ " id="status">


Created:

rowCount()) { ?> No servers found.