Помощ с динамична таблица

b0nb0n40

Registered
Здравейте! Искам тази таблица да се променя спрямо играчите в сървъра ми
Код:
<center>	
<table border="1">
<tr>
<td> <font color="green"><b>Име</b></font> </td>
<td> <font color="green"><b>Убийства</b></font> </td>
<td> <font color="green"><b>Умирания</b></font> </td>
<td> <font color="green"><b>Latency</b></font> </td>
<td> <font color="green"><b>Rank</b></font> </td>
<td> <font color="green"><b>Team</b></font> </td>
</tr>
<tr>
<td> <font color="white"><b>Полицая</b></font> </td>
<td> <font color="white"><b>28</b></font> </td>
<td> <font color="white"><b>12</b></font> </td>
<td> <font color="white"><b>36</b></font> </td>
<td> <font color="white"><b>5</b></font> </td>
<td> <img src="ct.png" alt="CT Team"> </td>
</tr>
<tr>
<td> <font color="white"><b>Терориста</b></font> </td>
<td> <font color="white"><b>36</b></font> </td>
<td> <font color="white"><b>18</b></font> </td>
<td> <font color="white"><b>24</b></font> </td>
<td> <font color="white"><b>2</b></font> </td>
<td> <img src="t.png" alt="T Team"> </td>
</tr>
<tr>
<td> <font color="white"><b>Спектатора</font> </td>
<td> <font color="white"><b>10</font> </td>
<td> <font color="white"><b>4</font> </td>
<td> <font color="white"><b>13</font> </td>
<td> <font color="white">1</font> </td>
<td> <img src="spec.png" alt="Spectator"> </td>
</tr>
</table>
</center>
В таблицата искам да се променя всичко
Име, Убийства, Умирания, Latency, Rank и Team
Също така редовете в таблицата да се променят спрямо хората в сървъра
Ето картинките:
http://cstester.hit.bg/ct.png
http://cstester.hit.bg/t.png
http://cstester.hit.bg/spec.png

P.S. : +1 на този който ми помогне ако има начин и +100 давам
 
Аз мога да ти го направя, само дето не знам как да направя това с играчите пък valve...
 
Не знам колко е спешно, обаче май е от миналата година...
Понеже не знам как се връзва valve с php ще ти кажа идеята, пък ти ще си го направиш ако можеш, или поне някой, който знае как да използва valve по този начин.
Идеята е:
един цикъл, който пише в таблицата ред по ред информацията играч по играч. т.е. един ред=един играч.
Главния ред си стои непроменен(този със съдържание Име Убийства...)
Всеки ред в цикъла трябва да съдържа колонки с каквото ще изкарваш - обаче те ще са променливи. За тази цел трябва да знаеш променливите какви са.
Аз съм до тук понеже, както вече споменах, не знам как да вържа valve с php. Ако имаш база данни, която съдържа във всеки един момент информация за играчите, може да мога да помогна.
 
Ами аз не искам да се връзва към база дадин а към статично ИП, тоест примерно ако ип-то е 123.123.123.123 да се връзва към него и към посочения порт тоест 27015 (при повечето случеи). Това означава че не искам да връзвам php с валве, а самото php да тегли информация от самия сървър.
 
Ето един клас, който може да свърши работа:
Архив с класа

А това ти е страницата, която показва играчите:
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<? require("counterstrike.php");?>
<HTML>
<HEAD>
<TITLE>Players on <?=$_GET["serveradr"]?></TITLE>
</HEAD>
<BODY BGCOLOR="#C0C0C0">
<?
  $csinfo=new CounterStrike;
  $status=$csinfo->getServerPlayers($_GET["serveradr"],$_GET["serverport"],1000);
  if ($status) {
?>
<TABLE>
<TR>
    <TD ALIGN="CENTER" VALIGN="TOP">
    <TABLE>
    <TR>
        <TD WIDTH="150"><STRONG>Name</STRONG></TD><TD><STRONG>Frags</STRONG></TD><TD><STRONG>Time</STRONG></TD>
    </TR>
    <TR>
        <TD COLSPAN="3"><HR></TD>
    </TR>
    <? if (is_array($csinfo->m_playerinfo)) { ?>
    <? while (list(,$player) = each ($csinfo->m_playerinfo)) { ?>
    <TR>
        <TD><?=$player["name"]?> </TD><TD> <?=$player["frags"]?></TD><TD><?=$player["time"]?></TD>
    </TR>
    <? } ?>
    <? } else { ?>
    <TR>
        <TD COLSPAN="3">No players on server right now</TD>
    </TR>
    <? } ?>    
    <TR>
        <TD COLSPAN="3"><HR></TD>
    </TR>
    <TR>
        <TD COLSPAN="3" ALIGN="CENTER"><FONT SIZE="1"><A HREF="showplayers.php?serveradr=<?=$serveradr?>&serverport=<?=$serverport?>">Refresh</A></FONT></TD>
    </TR>
    <TR>
        <TD COLSPAN="3"> </TD>
    </TR>
    <TR>
        <TD COLSPAN="3" ALIGN="CENTER"><FONT SIZE="1"><A HREF="javascript:window.close()">Close window</A></FONT></TD>
    </TR>
    </TABLE>
    </TD>
</TR>
</TABLE>
<? } else { ?>
<DIV ALIGN="CENTER">Error communicating with server</DIV>
<BR>
<DIV ALIGN="CENTER"><FONT SIZE="1"><A HREF="javascript:window.close()">Close window</A></FONT></DIV>
<? } ?>    
</BODY>
</HTML>

Можеш да видиш каквото ти трябва тук:
http://www.gameserver.dk/cs/csstatus.php
 
Мисля че класа е точно този който ми трябва, но когато се пробвам да го подкарам на локалхоста ми дава синтактични грешки, когато премахна тях вече пък се появяват грешки в кода?! :(

Ето погледни :
http://79.100.71.219/test/
 
Сега ще го оправя, в горното ми мнение кода на места се замества с bbcode от форума.
Готово, качих го в папката като архивче.
 
Скайпа ми го има в профила, обаче е възможно да не ти обърна голямо внимание там...
Така може да сме полезни на някой друг след време, така че до момента си е добре. Попринцип ти трябва да си готов вече, само трябва да си промениш сървъра и порта във файла, в който се показва информацията и това е. Нямаш нужда от мен вече.
Ето този ред трябва да промениш, ако няма да ползваш различни сървъри:
Код:
$status=$csinfo->getServerPlayers($_GET["serveradr"],$_GET["serverport"],1000);
 
Грешката :)
Warning: fsockopen() [function.fsockopen]: unable to connect to udp://:0 (Failed to parse address "") in C:\AppServ\www\test\counterstrike.php on line 70
Error communicating with server
 
b0nb0n40 каза:
Грешката :)
Warning: fsockopen() [function.fsockopen]: unable to connect to udp://:0 (Failed to parse address "") in C:\AppServ\www\test\counterstrike.php on line 70
Error communicating with server
Виж ми предното мнение и промени каквото трябва де...
 
Е добре промених го..
смених и нагоре и стана така
Код:
<?
  $serveradr ="play.cs-bg.info";
  $serverport="27015";
  $csinfo=new CounterStrike;
  $status=$csinfo->getServerPlayers($_GET["serveradr"],$_GET["serverport"],1000);
  if ($status) {
?>
Промених с тези стойности за да съм сигурен че сървъра е Онлайн. Но все още си дава същата грешка
Код:
Warning: fsockopen() [function.fsockopen]: unable to connect to udp://:0 (Failed to parse address "") in C:\AppServ\www\test\counterstrike.php on line 36
Error communicating with server
 
Виж че ти дава грешка с свръзването на сървъра.
Дане би да трябва тук $serveradr ="play.cs-bg.info"; да е пълен адреса?
http://play.cs-bg.info ?
 
Не дори и да го променя грешката си остава.. и аз не искам да се свързва към база данни на страница а към самия сървър :)
 
ОМГ...
Замени това:
Код:
$_GET["serveradr"]
с това:
Код:
$serveradr
във функцията... На никой ли не му прави впечатление, че търси GET стойности, а не нормални променливи??
 

Back
Горе