Fronix Posted December 5, 2008 Share Posted December 5, 2008 Hey guys I'm new here but i got a question and prob someone can solve it for me Ive got this script that can book HLDS Servers but its made for windows with pstools and stuff now I'm wondering if its possible to make it work with windows I can give you the code even if i bought it xD <?php $db_host = "******"; $db_table = "******"; $db_user = "******"; $db_pass = "******"; $dbh = mysql_connect($db_host,$db_user,$db_pass) or die("Kunde inte till MySQL databas."); mysql_select_db($db_table, $dbh); if(isset($_GET['logo'])){ $l[0] = ""; $l[1] = "lila"; $l[2] = "gron"; $l[3] = "bla"; $l[4] = "gul"; $rand = rand(0, 4); $_SESSION['top'] = $l[$rand]; } function DoMain(){ if(isset($_GET['okej']) || isset($_POST['okej'])){ if(isset($_GET['okej'])){ EchoOkej($_GET['okej']); }else{ EchoOkej($_POST['okej']); } } if(isset($_GET['wa']) || isset($_POST['wa'])){ if(isset($_GET['wa'])){ EchoVarning($_GET['wa']); }else{ EchoVarning($_POST['wa']); } } if ($_SERVER['REQUEST_METHOD']=="GET") { $op = $_GET['o']; } else { $op = $_POST['o']; } switch($op) { case "loggaut": DoLoggaUt(); break; case "loggain": DoLoggaIn(); break; case "boka": Boka(); break; case "kredit": Krediter(); break; case "registrera": Registrera(); break; case "inst": Installningar(); break; default: DoStart(); break; } } function DoStart(){ EchoCheck(); } function DoLoggaUt(){ $_SESSION['inloggad'] = ""; unset($_SESSION['inloggad']); header("location: cmd.php"); } function EchoOkej($id){ echo "<div class=\"okej\">\n"; echo $id; echo "</div>\n"; } function EchoVarning($id){ echo "<div class=\"varning\">\n"; echo $id; echo "</div>\n"; } function DoLoggaIn(){ global $dbh; if(isset($_POST['nick'])){ $nick = $_POST['nick']; $pass = md5($_POST['pass']); $query = mysql_query("SELECT * FROM cs_konton WHERE nick='$nick'", $dbh); $res = mysql_fetch_array($query); if($res[3] == $pass){ $_SESSION['inloggad'] = $res[1]; header("location: cmd.php?okej=Inloggad"); }else{ header("location: cmd.php?o=loggain"); } }else{ echo "<fieldset style=\"text-align: center;\"><legend>Logga in</legend>\n"; echo "<form method=\"post\" action=\"cmd.php\">\n"; echo "<input type=\"hidden\" name=\"o\" value=\"loggain\" />\n"; echo "Nick<br />\n"; echo "<input type=\"text\" name=\"nick\" /><br />\n"; echo "Lösenord<br />\n"; echo "<input type=\"password\" name=\"pass\" /><br />\n"; echo "<input type=\"submit\" value=\"Skicka\" />"; echo "</form>\n"; echo "<br /><a href=\"?o=registrera\">Registrera</a>\n"; echo "</fieldset>\n"; } } function KontoSak(){ global $dbh; echo '<div id="konto">'; $nick = $_SESSION['inloggad']; echo $nick.'<br />'; $query = mysql_query("SELECT kredit FROM cs_konton WHERE nick='$nick'", $dbh); $res = mysql_fetch_array($query); echo "<a href=\"?o=kredit\">"; echo $res[0]; echo ' krediter</a>'; echo '</div>'; } function Boka(){ $port = $_GET['port']; if(isset($port)){ if(isset($_SESSION['inloggad'])){ echo "\n"; echo "<fieldset><legend>Boka server S".$port."</legend>\n"; echo "<form method=\"post\" action=\"cmd.php\">\n"; echo "<input type=\"text\" name=\"csnamn\" /> Namn<br />\n"; echo "<input type=\"text\" name=\"cslosen\" /> Lösenord<br />\n"; echo "<input type=\"text\" name=\"csnrcon\" /> Rcon-lösenord<br />\n"; echo "<input type=\"hidden\" name=\"o\" value=\"boka\" />\n"; echo "<input type=\"hidden\" name=\"port\" value=\"".$port."\" />\n"; echo "<select name=\"tid\" onchange=\"showKrediter(this.value, '".$_SESSION['inloggad']."')\">\n"; echo "<option value=\"0\">-- Välj Tid ------------</option>\n"; echo "<option value=\"1\">1 timma (3 krediter)</option>\n"; echo "<option value=\"2\">2 timmar (6 krediter)</option>\n"; echo "<option value=\"3\">3 timmar (9 krediter)</option>\n"; echo "</select> Tid<br />\n"; echo "<div id=\"txtHint\">\n"; echo "</div>\n"; echo "<input type=\"submit\" value=\"Boka\" />\n"; echo "</form>\n"; echo "</fieldset>\n"; }else{ DoLoggaIn(); } }elseif(isset($_POST['port'])){ $port = $_POST['port']; $namn = $_POST['csnamn']; $losen = $_POST['cslosen']; $rcon = $_POST['csnrcon']; $tid = $_POST['tid']; $fel = $_POST['krediter']; Starta($port, $namn, $losen, $rcon, $tid, $fel); } } function Starta($port, $namn, $password, $rcon, $tid, $fel){ global $dbh; $query = mysql_query("SELECT slut FROM cs_serverar WHERE server='S".$port."'", $dbh); $res = mysql_fetch_array($query); if(isset($port) && (IsOnline("elitecs1.mine.nu", $port) == 0 && empty($fel) && $tid > 0 && $tid < 4)){ echo $descriptorspec = array( 0 => array("pipe", "r"), // stdin 1 => array("pipe", "w"), // stdout 2 => array("pipe", "w") // stderr ); $dir1 = '/home/Valve/HLServer/cstrike/ '; $dir2 = explode(" ", $dir1); $dir = $dir2[0]; $file = "S".$port.".cfg"; $file = $dir.$file; $fo = fopen($file, "w"); fwrite($fo, ConfigFile($port, $namn, $password, $rcon)); fclose($fo); exec("AT ".date("H:i", mktime(date("H")+$tid, date("i"), date("s"), date("m") , date("d"), date("Y")))." /interactive /home/Valve/HLServer/pskill.exe".$port.".exe"); $process2 = proc_open('start S'.$port.'.exe +port '.$port.' +maxplayers 12 +servercfgfile S'.$port.'.cfg -console -game cstrike', $descriptorspec, $pipes, '/home/Valve/HLServer'); sleep(2); proc_close($process2); $nu = date("Y-m-d H:i"); $da = date("Y-m-d H:i", mktime(date("H")+$tid, date("i"), date("s"), date("m") , date("d"), date("Y"))); $nick = $_SESSION['inloggad']; $query = mysql_query("SELECT ID FROM cs_konton WHERE nick='$nick'", $dbh); $res = mysql_fetch_array($query); $ID = $res[0]; $krediter = $tid*3; mysql_query("UPDATE cs_servrar SET start='$nu', slut='$da', kontoID='$ID' WHERE server='S".$port."'", $dbh); mysql_query("UPDATE cs_konton SET kredit=kredit-'$krediter' WHERE nick='$nick'", $dbh); header("location: cmd.php?okej=Servern bokad.<br />Den kommer upp inom kort!<br />85.226.62.71:$port<br />Rcon: $rcon<br />Lösenord: $password"); }elseif(isset($port)){ header("location: cmd.php?wa=Du kan inte boka den servern."); } } function ConfigFile($port, $namn, $password, $rcon){ if(empty($namn)){ $namn = "Hyrd hos |"; } if(empty($rcon)){ $rcon = "\"\""; } if(empty($password)){ $password = "\"\""; } return 'hostname "'.$namn.' | Mohaha" sv_password '.$password.' rcon_password '.$rcon.' map de_nuke'; } function Krediter(){ global $dbh; echo "<fieldset><legend>Krediter</legend>\n"; if(isset($_SESSION['inloggad'])){ $nick = $_SESSION['inloggad']; $query = mysql_query("SELECT kredit, ID FROM cs_konton WHERE nick='$nick'", $dbh); $res = mysql_fetch_array($query); $ID = $res[1]; echo "Du har <strong>".$res[0]."</strong> krediter.<br />\n"; echo "För att ladda på med krediter, välj summa nedan och SMS:a följande till <strong>72550</strong>:<br />\n"; echo "<table>\n"; echo "<tr>\n"; echo "<td><strong>Kostnad</strong></td>\n"; echo "<td><strong>Krediter</strong></td>\n"; echo "<td><strong>Meddelande</strong></td>\n"; echo "</tr>\n"; echo "<tr>\n<td>5kr</td><td>5st</td><td><strong>Aserver 5 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>10kr</td><td>10st</td><td><strong>Aserver 10 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>15kr</td><td>15st</td><td><strong>Aserver 15 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>20kr</td><td>20st</td><td><strong>Aserver 20 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>25kr</td><td>25st</td><td><strong>Aserver 25 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>30kr</td><td>30st</td><td><strong>Aserver 30 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>40kr</td><td>40st</td><td><strong>Aserver 40 $ID</strong></td>\n</tr>\n"; echo "<tr>\n<td>50kr</td><td>50st</td><td><strong>Aserver 50 $ID</strong></td>\n</tr>\n"; echo "</table>\n"; } echo "</fieldset>\n"; } function EchoCheck(){ global $dbh; echo "<fieldset><legend>Boka Server</legend>\n"; echo "<strong>Boka din server här! Billigt o bra!<br></br>Hejehj <br />\n"; echo "</fieldset><br />\n"; $ip = "elitecs1.mine.nu"; $port[] = 27015; $port[] = 27016; $port[] = 27017; $port[] = 27018; $port[] = 27019; $count = count($port); echo "<fieldset><legend>Servrar</legend>\n"; echo "<table>\n"; echo "<tr>\n"; echo "<td><strong>Server </strong></td>\n"; echo "<td><strong>Status </strong></td>\n"; echo "<td><strong>Blir ledig</strong></td>\n"; echo "<td><strong> Hyrd utav</strong></td>\n"; echo "</tr>\n"; for($i = 0; $i < $count; $i++){ $namn = "S".$port[$i]; echo "<tr>\n"; if(IsOnline($ip, $port[$i]) == 1){ echo "<td>$namn</td>\n"; echo "<td><img src=\"images/cross.png\" alt=\"Upptagen\" title=\"Upptagen\" /> </td>\n"; $query = mysql_query("SELECT cs_servrar.slut, cs_konton.nick FROM cs_servrar, cs_konton WHERE cs_servrar.server='$namn' AND cs_servrar.kontoID=cs_konton.ID", $dbh); $res = mysql_fetch_array($query); echo "<td>".$res[0]."</td>\n <td> ".$res[1]."</td>\n"; echo "<td> </td>\n"; }else{ echo "<td>$namn</td>\n"; echo "<td><img src=\"images/tick.png\" alt=\"Ledig\" title=\"Ledig\" /></td>\n"; echo "<td> </td>\n"; echo "<td> </td>\n"; echo "<td><a href=\"cmd.php?o=boka&port=$port[$i]\">Boka</a></td>\n"; } echo "</tr>\n"; } echo "</table>\n"; echo "</fieldset>\n"; } function IsOnline($ip, $port){ $connection = fsockopen("udp://$ip", $port, $felkod, $felmeddelande, 2); // Om servern inte svarar, visa felmeddelande och felkod // 1 = online, 0 = offline. if ($connection == false) { return 0; }else{ // Åh, sjysst! en anslutning skapades, skicka en fråga och "lyssna" efter ett svar... fwrite($connection, "\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x69\x6E\x65\x20\x51\x75\x65\x72\x79\x00"); stream_set_timeout($connection, 2); $info = fread($connection, 128); // Hej då lilla servern... over and out! fclose($connection); if(!empty($info)){ return 1; }else{ return 0; } } } function Registrera(){ global $dbh; $nick = $_POST['nick']; $epost = $_POST['epost']; $pass = $_POST['pass']; if(isset($nick)){ $klar = 0; $varning = 0; $query = mysql_query("SELECT nick FROM cs_konton WHERE nick='$nick'", $dbh); $res = mysql_fetch_array($query); if(empty($nick)){ $varning++; EchoVarning("Fyll i nick.\n"); }elseif(!empty($res[0])){ $varning++; EchoVarning("Nicket är redan upptaget.\n"); } $query = mysql_query("SELECT epost FROM cs_konton WHERE epost='$epost'", $dbh); $res = mysql_fetch_array($query); if(empty($epost)){ $varning++; EchoVarning("Fyll i epost.\n"); }elseif(!empty($res[0])){ $varning++; EchoVarning("Eposten är redan upptaget.\n"); }elseif(ValidateEmail($epost) == 0){ $varning++; EchoVarning("Eposten är inte godkänd.\n"); } if(empty($pass)){ $varning++; EchoVarning("Fyll i lösenord.\n"); } if($varning == 0){ $klar = 1; $pass = md5($pass); mysql_query("INSERT INTO cs_konton VALUES('', '$nick', '$epost', '$pass', '0')", $dbh); EchoOkej("Kontot är nu skapat."); echo "<br />\n"; } } if($klar != 1){ echo "<fieldset><legend>Registrera konto</legend>\n"; echo "<form method=\"post\" action=\"cmd.php\">\n"; echo "<input type=\"text\" name=\"nick\" value=\"$nick\" /> Nick<br />\n"; echo "<input type=\"text\" name=\"epost\" value=\"$epost\" /> Epost<br />\n"; echo "<input type=\"password\" name=\"pass\" /> Lösenord<br />\n"; echo "<input type=\"hidden\" name=\"o\" value=\"registrera\" />\n"; echo "<input type=\"submit\" value=\"Skicka\" />\n"; echo "</form>\n</fieldset>\n"; } } function ValidateEmail($email){ if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { return 0; }else{ return 1; } } function Installningar(){ global $dbh; echo "<fieldset><legend>Inställningar</legend>\n"; if(isset($_SESSION['inloggad'])){ $nick = $_SESSION['inloggad']; $query = mysql_query("SELECT * FROM cs_konton WHERE nick='$nick'", $dbh); $res = mysql_fetch_array($query); if(isset($_POST['epost'])){ $epost = $_POST['epost']; if(!empty($_POST['pass_n'])){ $pass_n = md5($_POST['pass_n']); }else{ $pass_n = md5($_POST['pass']); } if(md5($_POST['pass']) == $res[3] && ValidateEmail($epost) == 1){ mysql_query("UPDATE cs_konton SET epost='$epost', pass='$pass_n' WHERE nick='$nick'", $dbh); EchoOkej("Uppdaterat!"); } }else{ $epost = $res[2]; } echo "<form method=\"post\" action=\"cmd.php\">\n"; echo "<input type=\"text\" name=\"epost\" value=\"$epost\" /> Epost<br />\n"; echo "<input type=\"password\" name=\"pass\" /> Nuvarande lösenord<br />\n"; echo "<input type=\"password\" name=\"pass_n\"/> Nytt lösenord<br />\n"; echo "<input type=\"hidden\" name=\"o\" value=\"inst\" />\n"; echo "<input type=\"submit\" value=\"Uppdatera\" />\n"; echo "</form>\n"; } echo "</fieldset>\n"; } ?> Link to comment https://forums.phpfreaks.com/topic/135726-make-this-script-work-with-linux-possible/ Share on other sites More sharing options...
Fronix Posted December 6, 2008 Author Share Posted December 6, 2008 Sry for bumping can't find how to edit the topic but im trying to get this working on LINUX not windows i wrote wrong Link to comment https://forums.phpfreaks.com/topic/135726-make-this-script-work-with-linux-possible/#findComment-707256 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.