Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
|
tutorial:server:php_querry_script [2012/01/24 19:08] HSFighter [Zur Funktion] |
tutorial:server:php_querry_script [2012/11/02 02:31] (aktuell) HSFighter [Funktion für die Auswertung] |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== PHP Server-Query Script ====== | + | ====== PHP HL² Server-Query Script ====== |
| Das hier ist ein Tutorial für ein PHP Server-Query Script | Das hier ist ein Tutorial für ein PHP Server-Query Script | ||
| das Informationen von einem HL2/CS:S Server auslesen und anzeigen kann. | das Informationen von einem HL2/CS:S Server auslesen und anzeigen kann. | ||
| Zeile 78: | Zeile 78: | ||
| ==== Funktion für die Auswertung ==== | ==== Funktion für die Auswertung ==== | ||
| - | Jetzt brauchen wir Funktionen, die die Daten auswertet die uns der Server zurück schick.[/b] Man muss sich das folgendermaßen vorstellen:\\ | + | Jetzt brauchen wir Funktionen, die die Daten auswertet die uns der Server zurück schick. Man muss sich das folgendermaßen vorstellen:\\ |
| Der Server schickt uns eine Kette mit Informationen, die alle hintereinander kommen. Die müssen wir an bestimmten stellen trennen, damit wir die Informationen unterteilen können.\\ | Der Server schickt uns eine Kette mit Informationen, die alle hintereinander kommen. Die müssen wir an bestimmten stellen trennen, damit wir die Informationen unterteilen können.\\ | ||
| Zeile 97: | Zeile 97: | ||
| function get_int16() { | function get_int16() { | ||
| $unpacked = unpack('sint', fread($this->fp, 2)); | $unpacked = unpack('sint', fread($this->fp, 2)); | ||
| - | return $unpacked[int]; | + | return $unpacked["int"]; |
| } | } | ||
| Zeile 103: | Zeile 103: | ||
| function get_int32() { | function get_int32() { | ||
| $unpacked = unpack('iint', fread($this->fp, 4)); | $unpacked = unpack('iint', fread($this->fp, 4)); | ||
| - | return $unpacked[int]; | + | return $unpacked["int"]; |
| } | } | ||
| Zeile 109: | Zeile 109: | ||
| function get_float32() { | function get_float32() { | ||
| $unpacked = unpack('fint', fread($this->fp, 4)); | $unpacked = unpack('fint', fread($this->fp, 4)); | ||
| - | return $unpacked[int]; | + | return $unpacked["int"]; |
| } | } | ||
| // einen String vom Server holen | // einen String vom Server holen | ||
| function get_string() { | function get_string() { | ||
| + | $str = ''; | ||
| while(($char = fread($this->fp, 1)) != chr(0)) { | while(($char = fread($this->fp, 1)) != chr(0)) { | ||
| $str .= $char; | $str .= $char; | ||
| Zeile 217: | Zeile 218: | ||
| ===== Zusammenfassung der Klasse ===== | ===== Zusammenfassung der Klasse ===== | ||
| <code=php><?php | <code=php><?php | ||
| + | /** | ||
| + | * ============================================================================= | ||
| + | * This class will get infos from a HL2 server over php | ||
| + | * | ||
| + | * @author HSFighter | ||
| + | * @special thx to Chrisber | ||
| + | * @version 1.1.0 | ||
| + | * @package PHP Server-Query Script | ||
| + | * @link http://sourceserver.info | ||
| + | * | ||
| + | * @version 1.1.0: serverstatus.class.php by hsfighter $ | ||
| + | * ============================================================================= | ||
| + | */ | ||
| + | |||
| class HLServerAbfrage { | class HLServerAbfrage { | ||
| Zeile 265: | Zeile 280: | ||
| function get_int16() { | function get_int16() { | ||
| $unpacked = unpack('sint', fread($this->fp, 2)); | $unpacked = unpack('sint', fread($this->fp, 2)); | ||
| - | return $unpacked[int]; | + | return $unpacked["int"]; |
| } | } | ||
| Zeile 271: | Zeile 286: | ||
| function get_int32() { | function get_int32() { | ||
| $unpacked = unpack('iint', fread($this->fp, 4)); | $unpacked = unpack('iint', fread($this->fp, 4)); | ||
| - | return $unpacked[int]; | + | return $unpacked["int"]; |
| } | } | ||
| Zeile 277: | Zeile 292: | ||
| function get_float32() { | function get_float32() { | ||
| $unpacked = unpack('fint', fread($this->fp, 4)); | $unpacked = unpack('fint', fread($this->fp, 4)); | ||
| - | return $unpacked[int]; | + | return $unpacked["int"]; |
| } | } | ||
| // einen String vom Server holen | // einen String vom Server holen | ||
| function get_string() { | function get_string() { | ||
| + | $str = ''; | ||
| while(($char = fread($this->fp, 1)) != chr(0)) { | while(($char = fread($this->fp, 1)) != chr(0)) { | ||
| $str .= $char; | $str .= $char; | ||
| Zeile 375: | Zeile 391: | ||
| // Server Angaben | // Server Angaben | ||
| - | $ip = '85.131.170.95'; | + | $ip = '176.57.137.35'; |
| $port = '27015'; | $port = '27015'; | ||
| $mappic_path = 'http://meine-hp.de/mappics/css/'; | $mappic_path = 'http://meine-hp.de/mappics/css/'; | ||