php snak med telnet
hejsa Ejeg har rodet lidt med noget kode som skal skifte gameserver på min box via et php script, og noget telnet kommunikation, problemet ligger nu i at jeg ikke rigtig kan få php til at kommunikere med telnet.
Her er output fra en alm. telnet session:
Spil? dod
1
det er også fint, der retuneres 1 ved succesfuld skift, så jeg kan jo konkludere problemet må ligge i min php kode, her er foreløbig hvad jeg har strikket sammen:
<html>
<form method="post">
<select name="game">
<option value="q3ra3">Quake 3 Rocket Areana</option>
<option value="q3osp">Quake 3 OSP</option>
<option value="cs">Half-Life Counter-Strike</option>
<option value="wolf">Return To Castle-Wolfenstein</option>
<option value="dod">Half-Life Day Of Defeat</option>
<option value="bf">Battlefield 1942</option>
<option value="cod">Call of Duty</option>
<option value="moh">Medal of Honour</option>
<option value="ut">Unreal Tournament</option>
<option value="ut2k3">Unreal Tournament 2003</option>
</select>
<input type="submit" name="submit" value="change game">
</form>
<?
if(isset($_POST['submit'])) {
function changeGame($host, $port, $kommando) {
$fp = fsockopen($host, $port, $errno, $errstr, 5);
if(!$fp) {
echo "kunne ikke oprette forbindelse til ".$host;
return false;
}
else {
sleep(1);
fputs($fp, $kommando);
sleep(15);
stream_set_timeout($fp, 10);
$res = fread($fp, 100000);
fclose($fp);
return $res;
}
}
$game = $_POST['game'];
$respons = changeGame("ip", "port", $game);
echo $respons;
switch ($respons) {
case 0:
echo "der gik kage i noget";
break;
case 2:
echo "alt gik som det skal";
break;
case 4:
echo "serveren er midlertidig nede";
break;
default:
echo "intet tal eller forkert tal";
break;
}
}
?>
