PHP Online Status [Minecraft]

Programovacie jazyky, rady, poradňa...
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

Zdravím chcel by som sa spýtať nevedle by mi niekdo poradiť z Online php statusom prosím (Minecraft) potrebujem to status mám ale proste mám tam biele pozadie a chcem iné také ako chchem ja poradí niekdo kde a ako vložit ten kod? :) predom ďakujem
Numline1
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 858
Registrovaný: 04 dec 2006, 18:04

Re: PHP Online Status [Minecraft]

Príspevok od používateľa Numline1 »

Skus hodit link na konkretny kod, ktory pouzivas.
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

takto to vyzera: http://radio.8u.cz/example.php
a tu je kod:

Kód: Vybrať všetko

<?php
$server = "176.9.104.116"; // IP nebo adresa
$port = 25574; // port serveru

// Vytvoř obrázek o rozměrech
$image_width = 550; // px
$image_height = 150; // px
$im = imagecreatetruecolor($image_width, $image_height);

// Nastav barvy
$white = imagecolorallocate($im, 255, 255, 255);
$green = imagecolorallocate($im, 0, 255, 0);
$black = imagecolorallocate($im, 0, 0, 0);
$red = imagecolorallocate($im, 255, 0, 0);
$font_file = 'arial.ttf'; // umístění
$font = 'Minecraft.ttf';
$mineClassLoc = "MinecraftServerStatus/status.class.php"; // umístění třídy na zjištění statusu

// načti třídu a zjisti status
include_once $mineClassLoc;
$status = new MinecraftServerStatus();
$response = $status->getStatus($server,$port);

// Vyplň pozadí
imagefilledrectangle($im, 0, 0, $image_width, $image_height, $white);

// vepisování do obrázku
if(!$response){
	imagefttext($im, 50, 0, 180, 100, $red, $font, 'Offline');
} else {
	imagefttext($im, 30, 0, 10, 40, $green, $font_file, 'Online');
	imagefttext($im, 15, 0, 30, 70, $black, $font_file, $response['motd']);
	imagefttext($im, 15, 0, 30, 90, $black, $font_file, 'Host: '.$response['hostname'].":".$response['port']);
	imagefttext($im, 15, 0, 30, 110, $black, $font_file, 'Hráčů: '.$response['players'].'/'.$response['maxplayers']);
	imagefttext($im, 15, 0, 30, 130, $black, $font_file, 'Ping: '.($response['ping']).'ms');
	imagefttext($im, 14, 0, ($image_width - 150), 130, $black, $font_file, 'Version: '.$response['version']);
}
// nastav HTTP hlaviÄŤku
header('Content-Type: image/png');
// odešli png obrázek
imagepng($im);
// vyÄŤisti cache
imagedestroy($im);
sharky-no
King
King
Používateľov profilový obrázok
Príspevky: 1681
Registrovaný: 31 okt 2006, 19:53

Re: PHP Online Status [Minecraft]

Príspevok od používateľa sharky-no »

a musis to mat ako obrazok? preco to nevlozis len do nejakeho HTML ktore potom jednoducho nastylujes podla tvojho zelania...
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Online Status [Minecraft]

Príspevok od používateľa audiotrack »

$white = imagecolorallocate($im, 255, 255, 255);

tento riadok je definovanie farby pre pozadie. Daj si tam akú chceš, sú to zložky červená, zelená, modrá. Takže napríklad červené by bolo 255, 0, 0. Všetky farby si môžeš pozreť tu: http://www.rapidtables.com/web/color/RGB_Color.htm
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

dobre dakujem ja by som taketo pozadie chchel ako si ho tam možem dať takéto pozadie?
http://www.img.tpx.cz/uploads/Minecraftvvvv.png
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Online Status [Minecraft]

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

$im = imagecreatetruecolor($image_width, $image_height);
nahradíš týmto:

Kód: Vybrať všetko

$im = magecreatefrompng("tvojobrazok.png");
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

dobre ide ešte jeden problem takto to je mam aj nastavene farbyy aky ma byt text a niektore ma byt cierne a je zeleene poradi niekdo a ten kto mi poradil pred tym davam k+ http://radio.8u.cz/example.php
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Online Status [Minecraft]

Príspevok od používateľa audiotrack »

neporadí keď nevieme čo všetko si tam poprepisoval :)
Vypisuj to čiernou farbou a nie zelenou, a bude to čierne
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

no ono to je takto jeden mi poradil takto to mám teraz:

Kód: Vybrať všetko

<?php
$server = "176.9.104.116"; // IP nebo adresa
$port = 25574; // port serveru

// Vytvoř obrázek o rozměrech
$image_width = 550; // px
$image_height = 150; // px
$im = imagecreatefrompng("signa.png");

// Nastav barvy
$black = imagecolorallocate($image, 0, 0, 0);
$red = imagecolorallocate($image, 204,0,0);      
$blue = imagecolorallocate($image, 0,0,255);
$green = imagecolorallocate($image, 0,255,51);
$green2 = imagecolorallocate($image, 0,153,0);
$font_file = 'arial.ttf'; // umístění
$font = 'Minecraft.ttf';
$mineClassLoc = "MinecraftServerStatus/status.class.php"; // umístění třídy na zjištění statusu

// načti třídu a zjisti status
include_once $mineClassLoc;
$status = new MinecraftServerStatus();
$response = $status->getStatus($server,$port);

// Vyplň pozadí
$im = imagecreatefrompng("signa.png");

// vepisování do obrázku
	imagefttext($im, 25, 0, 10, 40, $blue, $font, 'Online');
	imagefttext($im, 15, 0, 30, 70, $black, $font_file, $response['motd']); 
	imagefttext($im, 15, 0, 30, 90, $black, $font_file, 'IP: '.$response['hostname'].":".$response['port']);
	imagefttext($im, 15, 0, 30, 110, $black, $font_file, 'Hraci: '.$response['players'].'/'.$response['maxplayers']);
	imagefttext($im, 15, 0, 30, 130, $black, $font_file, 'Verzia: '.$response['version']);

;// nastav HTTP hlaviÄŤku
header('Content-Type: image/png');
// odešli png obrázek
imagepng($im);
// vyÄŤisti cache
imagedestroy($im);
toto som menil imagefttext a už to ide len ten text ako vidite je zeleny a ma byť čirny mam tam že má byť čierny a je zelený nechápem :(

//autoeditácia príspevku (16 Sep 2013, 14:24)
no tak čo poradí niedko prosím? :(
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Online Status [Minecraft]

Príspevok od používateľa audiotrack »

riadok

Kód: Vybrať všetko

$im = imagecreatefrompng("signa.png");
tam máš dvakrát. Nechaj iba ten prvý navrchu, a ten v strede zmaž. V riadkoch

Kód: Vybrať všetko

$black = imagecolorallocate($image, 0, 0, 0);
$red = imagecolorallocate($image, 204,0,0);     
$blue = imagecolorallocate($image, 0,0,255);
$green = imagecolorallocate($image, 0,255,51);
$green2 = imagecolorallocate($image, 0,153,0);
má byť všade namiesto $image iba $im. V prvom prípade čo si dával si to tak mal, neviem aká logika ti povedala že to máš poprepisovať na $image keď takú premennú tam nikde nemáš deklarovanú.
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

mám to tak ako si napísal a stále nejde :(
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Online Status [Minecraft]

Príspevok od používateľa audiotrack »

tomu neverím
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

dokaz:

Kód: Vybrať všetko

<?php
$server = "176.9.104.116"; // IP nebo adresa
$port = 25574; // port serveru

// Vytvoř obrázek o rozměrech
$image_width = 550; // px
$image_height = 150; // px
$im = imagecreatefrompng("signa.png");

// Nastav barvy
$black = imagecolorallocate($im, 0, 0, 0);
$red = imagecolorallocate($im, 204,0,0);      
$blue = imagecolorallocate($im, 0,0,139);
$green = imagecolorallocate($im, 0,0,139);
$green2 = imagecolorallocate($im, 0,0,139);
$font_file = 'arial.ttf'; // umístění
$font = 'Minecraft.ttf';
$mineClassLoc = "MinecraftServerStatus/status.class.php"; // umístění třídy na zjištění statusu

// načti třídu a zjisti status
include_once $mineClassLoc;
$status = new MinecraftServerStatus();
$response = $status->getStatus($server,$port);

// vepisování do obrázku
	imagefttext($im, 25, 0, 10, 40, $red, $font, 'Online');
	imagefttext($im, 15, 0, 30, 70, $blue, $font_file, $response['motd']); 
	imagefttext($im, 15, 0, 30, 90, $blue, $font_file, 'IP: '.$response['hostname'].":".$response['port']);
	imagefttext($im, 15, 0, 30, 110, $blue, $font_file, 'Hraci: '.$response['players'].'/'.$response['maxplayers']);
	imagefttext($im, 15, 0, 30, 130, $blue, $font_file, 'Verzia: '.$response['version']);

;// nastav HTTP hlavičku
header('Content-Type: image/png');
// odešli png obrázek
imagepng($im);
// vyčisti cache
imagedestroy($im);
?>
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: PHP Online Status [Minecraft]

Príspevok od používateľa audiotrack »

v predošlom príklade:

Kód: Vybrať všetko

$black = imagecolorallocate($image, 0, 0, 0);
$red = imagecolorallocate($image, 204,0,0);     
$blue = imagecolorallocate($image, 0,0,255);
$green = imagecolorallocate($image, 0,255,51);
$green2 = imagecolorallocate($image, 0,153,0);
v tvojom novom príklade:

Kód: Vybrať všetko

$black = imagecolorallocate($im, 0, 0, 0);
$red = imagecolorallocate($im, 204,0,0);     
$blue = imagecolorallocate($im, 0,0,139);
$green = imagecolorallocate($im, 0,0,139);
$green2 = imagecolorallocate($im, 0,0,139);
a ideš tvrdiť že to máš tak isto. Tie farby si si úplne predefinoval. Ak je tam 0,0,139 tak je to odtieň modrej, ale určite nie zelená. Máš v tom poriadny bordel
SamerLP
Medium Expert
Medium Expert
Príspevky: 131
Registrovaný: 11 aug 2013, 22:03

Re: PHP Online Status [Minecraft]

Príspevok od používateľa SamerLP »

ešte by som sa schcel spýtať už mi aj poradil uto moderator ale moc tomu nechapem ja tuto mam napr že taky formular čo je
http://www.redstonemania.cekuj.net/unban.html a take niečo sa mi zda može byť a ked napise ip port a nazov tak to urobi takyto status pre jeho ip nazov a verzia a počet hračov niečo takéto: http://radio.8u.cz/example.php
len neviem ako mam spraviť aby im taky status ked vyplnia ten formular tak aby im spravilo taky status kod na moj status mam len neviem ako ho upravit co odobrat a pridat tu je zdorjovy aktualny kod na status:

Kód: Vybrať všetko

<?php
$server = "176.9.104.116"; // IP nebo adresa
$port = 25574; // port serveru

// Vytvoř obrázek o rozměrech
$image_width = 550; // px
$image_height = 150; // px
$im = imagecreatefrompng("signa2.png");

// Nastav barvy
$black = imagecolorallocate($im, 0, 0, 0);
$red = imagecolorallocate($im, 255,0,0);      
$blue = imagecolorallocate($im, 0,0,139);
$green = imagecolorallocate($im, 0,255,0);
$green2 = imagecolorallocate($im, 0,255,255);
$font_file = 'arial.ttf'; // umístění
$font = 'Minecraft.ttf';
$mineClassLoc = "MinecraftServerStatus/status.class.php"; // umístění třídy na zjištění statusu

// načti třídu a zjisti status
include_once $mineClassLoc;
$status = new MinecraftServerStatus();
$response = $status->getStatus($server,$port);

// vepisování do obrázku
	imagefttext($im, 15, 0, 430, 140, $red, $font_file, '(c)SamerLP');
       imagefttext($im, 25, 0, 10, 40, $green, $font, 'Online');
	imagefttext($im, 15, 0, 30, 70, $green2, $font_file, 'gameStreets|mGame 1.5.2');
	imagefttext($im, 15, 0, 30, 90, $green2, $font_file, 'IP: '.$response['hostname'].":".$response['port']);
	imagefttext($im, 15, 0, 30, 110, $green2, $font_file, 'Hraci: '.$response['players'].'/'.$response['maxplayers']);
	imagefttext($im, 15, 0, 30, 130, $green2, $font_file, 'Verzia: '.$response['version']);

;// nastav HTTP hlaviÄŤku
header('Content-Type: image/png');
// odešli png obrázek
imagepng($im);
// vyÄŤisti cache
imagedestroy($im);
?>
Napísať odpoveď