Autorius Tema: Ip'o išgavimas iš mysql  (Skaityta 1189 kartus)

Neprisijungęs NoyzLT

  • Naujokas
  • *
  • Įrašai: 17
  • Karma: +0/-0
    • Žiūrėti profilį
Ats: Ip'o išgavimas iš mysql
« Atsakymas #20 Įrašytas: 2012-10-11 13:54:15 pm »
Taip kodas ne mano, bet pats tikrai nepasidaryčiau, kadangi trūksta php žinių.

Prisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: Ip'o išgavimas iš mysql
« Atsakymas #21 Įrašytas: 2012-10-11 14:14:40 pm »
Taip kodas ne mano, bet pats tikrai nepasidaryčiau, kadangi trūksta php žinių.



<?php

$packet 
"\xFF\xFF\xFF\xFFTSource Engine Query\x00";

mysql_connect("localhost""root""");
mysql_select_db("serverlist");

$query mysql_query("SELECT * FROM serveriai") or die(mysql_error());

function 
getnextstring(&$data) {
    
$temp "";
    
$counter 0;
    while (
ord($data[$counter++]) != 0)
        
$temp.=$data[$counter 1];
    
$data substr($datastrlen($temp) + 1);
    return 
$temp;
}

function 
getnextbytevalue(&$data) {
    
$temp ord($data[0]);
    
$data substr($data1);
    return 
$temp;
}

while (
$row mysql_fetch_array($query)) {


    if (!
$live_server fsockopen("udp://" $row['ip'] . ":" $row['port'] . "")) {
        
$output "Off";
    } else {
        
fwrite($live_server$packet);
        
socket_set_timeout($live_server10);
        
$junk fread($live_server5);
        
$status socket_get_status($live_server);
        
$do 1;
        
$server_info "";

        while (
$do) {
            
$str_1 fread($live_server1);
            
$server_info .= $str_1;
            
$status socket_get_status($live_server);
            if (
$status["unread_bytes"] == 0) {
                
$do 0;
            }
        }
        
fclose($live_server);

        if (
strlen($server_info) > 0) {
            
$success 1;
            
$junk getnextstring($server_info);
            
$servername getnextstring($server_info);
            
$map getnextstring($server_info);
            
$junk getnextstring($server_info);
            
$junk getnextstring($server_info);
            
$players getnextbytevalue($server_info);
            
$maxplayers getnextbytevalue($server_info);
        }

        if (
$players != '') {
            
$players $players;
        } else {
            
$players "0";
        }

        if (
$maxplayers != '') {
            
$maxplayers $maxplayers;
        } else {
            
$maxplayers "0";
        }
        if (
$players $maxplayers) {
            
$output "<font color='green'>On</font>";
        } else {
            
$output "<font color='#54ff00'>Full</font>";
        }
        if (
$output != "Full" and $players != "0" or $maxplayers != "0") {
            
$output $output;
        } else {
            
$output "<font color='red'>Off</font>";
        }
        if (
$map != '') {
            
$map "" $map "";
        } else {
            
$map "-----";
        }
        if (
$servername != '') {
            
$servername $servername;
        } else {
            
$servername "<font color='#ff3600'>Serveris neveikia</font>";
        }
    }
    
    

        echo 
"<table cellpadding='0' cellspacing='1' width='100%' height='25'>\n<tr>\n";
        echo
"<td class='gtinasr56' align='center'>" $output "</td>
            <td class='vovercikas' align='center'>" 
$row['ip'] . ":" $row['port'] . "</td>
            <td class='vovercikas' align='center'>" 
$servername "</td>
            <td class='vovercikas' align='center'>" 
$map "</td>
            <td class='vovercikas' align='center'>" 
$players "/" $maxplayers "</td>";
        echo 
"</tr>\n</table>\n";
}
?>



jei neveikia, pasakyk ka rodo jei padarai tik taip vietoj viso to kodo:



<?php

mysql_connect
("localhost""root""");
mysql_select_db("serverlist");

$query mysql_query("SELECT * FROM serveriai") or die(mysql_error());

while (
$row mysql_fetch_array($query)) {
    
print_r($row);
    echo 
'<br />';
    echo 
'<br />';
}
?>
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs NoyzLT

  • Naujokas
  • *
  • Įrašai: 17
  • Karma: +0/-0
    • Žiūrėti profilį
Ats: Ip'o išgavimas iš mysql
« Atsakymas #22 Įrašytas: 2012-10-11 14:42:54 pm »
Viskas lyg ir veikia, bet kažkokios nesąmonės vyksta :D kartais rodo tuos pačius du serverių pavadinimus, nors ipai skirtingi, arba tokį pat mapą ir žaidėjų skaičių, nors serveriai yra skirtingi. :D

Prisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7385
  • Karma: +226/-15
    • Žiūrėti profilį
    • mano CV
Ats: Ip'o išgavimas iš mysql
« Atsakymas #23 Įrašytas: 2012-10-11 14:58:28 pm »
Viskas lyg ir veikia, bet kažkokios nesąmonės vyksta :D kartais rodo tuos pačius du serverių pavadinimus, nors ipai skirtingi, arba tokį pat mapą ir žaidėjų skaičių, nors serveriai yra skirtingi. :D

nurodyk pradzioj ciklo visu kintamuju pradines reiksmes, kuriuos spausdini. Tau pro ifus praeina kartais vienaip kartais kitaip ir todel neatsinaujina duomenys
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Manualai.lt Forumas

Ats: Ip'o išgavimas iš mysql
« Atsakymas #23 Įrašytas: 2012-10-11 14:58:28 pm »