форум вебмастероff на AlfaSpace.NET

Ubuntu и Linux |реактивный бесплатный хостинг | Киноклуб. ВСЁ БЕСПЛАТНО!
база знаний хостинга | правила форума

  Начало ° Ответить ° Статистика ° Опрос ° Регистрация ° Поиск ° FAQ °
Форум вебмастеров на AlfaSpace.NET / Создание сайта / Вопрос
Автор Сообщение
Lythium
Участник

194
# Дата: 6 Апр 2007 15:38


Как перетащить из этого кода:
<?php 
 
error_reporting(E_ALL); 
 
define ("SERVLIST", "servers.txt");  // файл со списком server:port 
define ("URL", 'monitor.php?server='); // скрипт подробной статистики по конкрет 
ному серверу define("SERVERSBYPAGE", 666); // количество серверов на страницу function GetServerInfo($server,$port) { $fp = @fsockopen("udp://".$server, $port); if (!$fp) return false; @fwrite($fp,"\xFF\xFF\xFF\xFF\x54\x53\x6F\x75\x72\x63\x65\x20\x45\x6E\x67\x6
9\x6E\x65\x20\x51\x75\x65\x72\x79\x00".chr(10)); $start=time(); socket_set_timeout($fp,1); $st=fread($fp,1); $r=socket_get_status($fp); $r=$r["unread_bytes"]; if ($r == 0) { @fclose($fp); return false;} $st.=fread($fp,$r); @fclose($fp); $st=substr($st,5); $address=SubStr($st,0,StrPos($st,chr(0))); $address=str_replace(chr(0),"|",$address); $st=SubStr($st,StrPos($st,chr(0))+1); $name=SubStr($st,0,StrPos($st,chr(0))); $st=SubStr($st,StrPos($st,chr(0))+1); $map=SubStr($st,0,StrPos($st,chr(0))); $st=SubStr($st,StrPos($st,chr(0))+1); $st=SubStr($st,StrPos($st,chr(0))+1); $st=SubStr($st,StrPos($st,chr(0))+1); $current=ord(SubStr($st,0,1)); $max=ord(SubStr($st,1,1)); if ($map == "") return false; $result['map'] = $map; $result['name']= $name; $result['current'] = $current; $result['max'] = $max; return $result; } function ReadServers($servlist) { $file = @fopen($servlist,"rt"); if ($file) { $lines = explode("\n", fread($file, filesize($servlist))); foreach ($lines as $v) { $elem = explode(":",$v); $srv['ip'] = $elem[0]; $srv['port'] = $elem[1]; if (GetServerInfo($srv['ip'],$srv['port'])) $servers[] = $srv; } fclose($file); return $servers; } else return false; } function AddServer($newserver,$servlist) { if (!preg_match('/^\d{1,3}[.]\d{1,3}[.]\d{1,3}[.]\d{1,3}:\d{1,5}$/xs',$_REQUEST[
'newserver'])) return false; $f = fopen($servlist,"a+"); if (!$f) return false; fputs($f,"\n".$_REQUEST['newserver']); fclose($f); return true; } if (isset($_REQUEST['newserver'])) { if (!preg_match('/^\d{1,3}[.]\d{1,3}[.]\d{1,3}[.]\d{1,3}:\d{1,5}$/xs',$_REQUEST[
'newserver'])) echo "Ошибка! Невозможно определить введенный сервер или порт"; else { list($newserv['ip'],$newserv['port']) = explode(":",$_REQUEST['newser
ver']); if (!GetServerInfo($newserv['ip'],$newserv['port'])) echo "Ошибка! Не уд
алось подключиться к серверу"; elseif (in_array($newserv, ReadServers(SERVLIST))) echo "Сервер уже есть
в списке<br />"; elseif (!AddServer($newserver,SERVLIST)) echo "Ошибка при добавлении сер
вера <br />"; else echo "Сервер добавлен в список <br />"; } echo "<br/><a href=".$_SERVER['SCRIPT_NAME'].">Вернуться</a>"; exit; } $servers = array(); $servers = ReadServers(SERVLIST); $countpages = ceil(count($servers)/SERVERSBYPAGE); if (!isset($_GET['page']) || ((int)$_GET['page'] == 0) || $_GET['page'] < 1) $_G
ET['page'] = 1; { for ($i=0; $i < ($_GET['page']-1)*SERVERSBYPAGE; $i++) array_shift($servers)
; while (count($servers) > SERVERSBYPAGE) array_pop($servers); } ?> <table width='100%' cellpadding='3' cellspacing='3' bordercolor='#333333' border
colorlight="#666666" border="1"> <tr> <td><div align='center'>Сервер:</div></td> <td><div align='center'>Название:</div></td> <td><div align='center'>Карта:</div></td> <td><div align='center'>Игроков:</div></td> <td><div align='center'>Статус:</div></td> </tr> <p> <?php foreach ($servers as $k=>$v) { $serv = GetServerInfo($v['ip'],$v['port']); if ($serv) echo "<tr> <td><div align='center'> <a href=".URL.$v['ip']." onmouseover=\"return overlib('На сервере сейчас игр
ают:');\" onmouseout=\"return nd();\">".$v['ip'].":".$v['port']."<a></div></td> <td><div align='center'>".$serv['name']."</div></td> <td><div align='center'>".$serv['map']."</div></td> <td><div align='center'>".$serv['current']."/".$serv['max']."</div></td> <td height='50'><div align='center'> <font color=green><b>Online</b></font> </div></td></tr>"; } echo "<br /></table>"; if (count($servers) > SERVERSBYPAGE) { echo "<br /><br /><p>Страницы:&nbsp;</p>"; for ($i = 1; $i <= $countpages; $i++); { if ($i == $_GET['page'] ) echo "[".$i."]&nbsp;"; else echo "[<a href=\"".$_SERVER['SCRIPT_NAME']."?page=$i\">$i</a>]&nbsp;"; } } else echo "<br /> <p>Добавить сервер:</p> <form action=".$_SERVER['SCRIPT_NAME']."> <input name=\"newserver\" type=\"text\" value=\"IP Адрес : Порт\" onfocus=\"if(t
his.value=='IP Адрес : Порт')this.value='';\" onblur=\"if(this.value=='')this.va
lue='IP Адрес : Порт';\"> <input type=\"submit\" value=\"Добавить\"> </form>"; echo"<p><br><a href=http://www.i-neon.lv/>© I-NeOn.LV</font></a>"; ?>



Вот это:
else echo "<br /> 
<p>Добавить сервер:</p> 
 
<form  action=".$_SERVER['SCRIPT_NAME']."> 
<input name=\"newserver\" type=\"text\" value=\"IP Адрес : Порт\" onfocus=\"if(t 
his.value=='IP Адрес : Порт')this.value='';\" onblur=\"if(this.value=='')this.va
lue='IP Адрес : Порт';\"> <input type=\"submit\" value=\"Добавить\"> </form>";



В самый верх. Чтобы вверху страницы было.. Как?

Константин
TorrentMaster

3515
# Дата: 6 Апр 2007 15:41 ° Поправил: Константин


весь вывод писать в переменную $result, а не отдавать сразу в браузер, добавляя в конец новые данные по принципу $reault.='blablabla'

а в последней части кода приписать к началу новые данные
$result='blabla'.$result

в конце скрипта:
echo $result

Alexies
Вождь высшей расы

482
# Дата: 7 Апр 2007 04:16


Кстати, Lythium хостится у меня и этот скрипт грузит проц до 40% так что окуратно с хотерами

Рамиль
minibb moder

1152
# Дата: 7 Апр 2007 04:22


Lythium
» Alexies
Кстати, Lythium хостится у меня и этот скрипт грузит проц до 40% так что окуратно с хотерами

по-моему стоит кешировать результат хотя раз в 10-20 минут

Lythium
Участник

194
# Дата: 7 Апр 2007 04:54


Константин
А "добавить сервер", куда это нужно пихнуть?
Немного непонял..

Alexies
Насчёт хостера говорил)

Рамиль
Может скоро сделаем)

Константин
TorrentMaster

3515
# Дата: 7 Апр 2007 09:35


Lythium
Объясняю по пунктам:
в начало скрипта ставишь
$result000='';

затем - до нужного тебе куска кода все echo "blablabla" заменяешь на $result000.="blablabla";

В нужном тебе куске кода else echo " .... " заменяешь на $result000=" .... ".$result000

в конец скрипта вставляешь echo $result000.

В итоге вывод из нужного тебе куска кода будет вверху страницы, хотя он выполнится последним.

Lythium
Участник

194
# Дата: 7 Апр 2007 12:32


Константин
Я ламер... пишет:
Parse error: syntax error, unexpected T_ECHO in /var/www/vhosts/lv-mcc.o 
rg/subdomains/neon/httpdocs/monitor.php on line 151



Не могли бы написать полностью скрипт этот, в котором "Добавить сервер" стоит в самом вверху..?

Alexies
Вождь высшей расы

482
# Дата: 7 Апр 2007 16:23


Lythium
и что на 151 строке?

Ваш ответ

Quote  Bold Style  Italic Style  Underlined Style  URL Link  Email Link  Script AutoTab  Preformatted Text  Отменить *Что это?
... Запретить смайлы


Перед отправкой "нелатинского" текста проверьте кодировку броузера!
 » Логин  » Пароль 
 
Powered by miniBB forum software © 2001-2008
Powered by miniBB-gzipper. Original size:33876, gzipped size:10292

Mp3 Download || Мир Спанч боба || Song's Lyrics
eXTReMe Tracker Rambler's Top100 Рейтинг@Mail.ru Форум ТвойWeb [Valid RSS]