Перейти к публикации

Рекомендованные сообщения

вот такая проблемка, не получается вывести никак данный скрипт, скрипт шарной, для мониторинга

<?php

//**********************

//***Scripted by Lexy***

// modified by dreamW

//**********************

$servers[]='127.0.0.1:8303';

$servers[]='127.0.0.1:8304';

$servers[]='127.0.0.1:8305';

// $servers[]='yorserver1:yourport1';

// $servers[]='yorserver..N:yourport..N';

$timeout=16;

$i=1;

if (!isset($_GET['serverId'])) { //servers

echo "<div class='buttons'><table align='center' border=0 cellspacing=0 cellpadding=4 width=50% class=liner>";

echo "<tr><td width=15px>&nbsp</td><td>&nbsp</td><td width=22%>&nbsp</td><td>&nbsp</td></tr>";

echo "<tr><td width=15px><small>#</small></td><td><b><small>Server name</small></b></td><td width=22%><b><small>Map</small></b></td><td align='right'><b><small>Players</small></b></td></tr>";

foreach ($servers as $server) {

$info=get_serverdata($server, $timeout);

switch ($info[2])

{

case '1' : $gt = 'Team Deathmatch'; break;

case '2' : $gt = 'Capture the Flag'; break;

default: $gt = 'Deathmatch'; break;

}

echo "<tr><td width=15px>$i</td><td><a href='?serverId=".$i."#mon'>".$info[0]."</a></td><td>".$info[1]."</td><td align='right'>".$info[5].'/'.$info[6]."</td></tr>";

$i++;

}

echo "</table></div>";

} else { //players

$ghtml='';

$serverid=$_GET['serverId'];

$server=$servers[$serverid-1];

$info=get_serverdata($server, $timeout);

echo "<div class='buttons'><table align='center' border=0 cellspacing=0 cellpadding=4 width=50% class=liner>";

echo "<tr><td width=15px>&nbsp</td><td>&nbsp</td><td width=22%>&nbsp</td><td>&nbsp</td></tr>";

echo "<tr><td width=15px><small>#</small></td><td><b><small>Server name</small></b></td><td width=22%><b><small>Map</small></b></td><td align='right'><b><small>Players</small></b></td></tr>";

echo "<tr><td width=15px>$serverid</td><td>".$info[0]."</td><td>".$info[1]."</td><td align='right'>".$info[5].'/'.$info[6]."</td></tr>";

echo "</table></div>";

if($info[5]>0) {

$ghtml.='<br><table style="font-family: tahoma; font-size: 11px; text-align:center; border: 1px #eeeeee solid;" width="50%" align=center ><tr style=" background-color: #f0f0f0"><td>Player</td><td>Score</td></tr>';

for($i=7;$i<=sizeof($info)-2;$i+=2) $ghtml.='<tr><td><b>'.$info[$i].'</b></td><td>'.$info[$i+1].'</td></tr>';

$ghtml.='</table>';

} else $ghtml.='<center>No players online</center>';

echo $ghtml;

}

function get_serverdata($server, $timeout) {

$data=explode(":",$server);

$s_addr=$data[0];

$s_port=$data[1];

$os = @fsockopen('udp://'.@gethostbyname($s_addr), $s_port, $errno, $errstr, $timeout);

if($os) {

fwrite($os,"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xffgief");

$info=explode(chr(00), substr(fread($os,1024),20)); $size = sizeof($info);

if($size>5)

{

fclose($os);

return $info;

}

else

{

echo 'TeeWars Server Not Detected';

return;

}

}

else

{

echo 'Connection failed';

return;

}

}

?>

Ссылка на сообщение
Поделиться на других сайтах

Спасибо за статью, на мог бы мне ктото обьяснить зачем ставить точку после $my_mod_buffer ?

Какая разница, если написать так, с точкой

$my_mod_buffer.= "Hello, world!";
или так без точки
$my_mod_buffer = "Hello, world!";
что означает это
$my_mod_buffer = '';

просто, не сильно понятно, я как новичек просто вижу что переменной $my_mod_buffer присвоено значение "....

Если бы еще ктото написал мануал по самым часто используемым функциям и переменным DLE ну там значит $config, $db->query, get_row, $row , ато разобратся не могу....)

Ссылка на сообщение
Поделиться на других сайтах

Для начала присваиваем переменной пустое значение, чтобы объявить её, а потом просто дописываем данные в неё.

Ссылка на сообщение
Поделиться на других сайтах

Для начала присваиваем переменной пустое значение, чтобы объявить её, а потом просто дописываем данные в неё.

Вы ответите мне, или нет? Попросили посмотреть скрипт и тишина. Можно же быть уважительнее и отписаться что не получилось или нет времени. Хотя на другие посты отвечать время есть. Без обид, но как-то не красиво.

Ссылка на сообщение
Поделиться на других сайтах

readfile(getTodayFileName())

Заменить на $buffer = getTodayFileName();

В buffer свалится содержимое.

my_mod_buffer.

скажите обязательное значение? или я могу свое сделать допустим? ($moy_mod ) ??

Можно заменить

Ссылка на сообщение
Поделиться на других сайтах

IT-Security, ты баклан, понял? А сейчас я обосную почему. Взял скрипт на халяву, типа "чтобы помочь", а потом даже не отписался на просьбу ответить как обстоят дела. Западло таким быть как ты. Из человека ты превратился в учебник по математике и это самое печальное. Хотя может быть ты человеком никогда и не был.

Ссылка на сообщение
Поделиться на других сайтах

eleon, никто не обьязан Вам тут бесплатно помогать.

Ссылка на сообщение
Поделиться на других сайтах

eleon, никто не обьязан Вам тут бесплатно помогать.

В наше время и людьми быть тоже, видимо, не обязаны. Три дня слежу за темой. Сложно отписаться что не получилось? Или как?

Ссылка на сообщение
Поделиться на других сайтах

Думаю отпишуться тебе еще, я эту тему еще больше ждал, но мне IT-Security очень помог, за что очень благодарен. Хотя он и не обьязан был мне помогать. Но создав эту тему помог многим.

Ссылка на сообщение
Поделиться на других сайтах

Если в моём примере написать без точки, то с точки зрения PHP это будет ошибка уровня Notice...
Для начала присваиваем переменной пустое значение, чтобы объявить её, а потом просто дописываем данные в неё.

Сергей, честно говоря, не понимаю откуда вылезет Notice. Сразу и объявляем переменную и присваиваем ей значение в одной строчке :)

Ссылка на сообщение
Поделиться на других сайтах

Саш, поставь уровень E_ALL и попробуй просто сделать $some_var.= "111";

IT-Security, ты баклан, понял? А сейчас я обосную почему. Взял скрипт на халяву, типа "чтобы помочь", а потом даже не отписался на просьбу ответить как обстоят дела. Западло таким быть как ты. Из человека ты превратился в учебник по математике и это самое печальное. Хотя может быть ты человеком никогда и не был.

Ты долб**б, понял?А вот обоснование:

Код

readfile(getTodayFileName())

Заменить на $buffer = getTodayFileName();

В buffer свалится содержимое.

Вот это адресовалось тебе, баран!

Если бы ты хоть удосужился открыть код, который просил увидеть, то своей тупою головой УВИДЕЛ БЫ эту строчку в САМОМ КОНЦЕ ФАЙЛА.

Но так как ты НИХРЕНА не открывал, а просто решил решить свою проблему на халяву, то послан НАХ!

p.s. Мне твой скрипт экспорта с центрабанка нахер не нужен)

<?php

	error_reporting(E_ALL);

	$var.= "111";

?>

Notice: Undefined variable: var in D:\wamp\www\test.php on line 3

P.P.S. Саш, мы не объявляем и сразу присваиваем. $buffer.= "xz" - это тоже самое, что $buffer = $buffer."xz";

Иначе говоря это конкатенация (CONCAT). А так, как переменная, с которой мы хотим соединить не существует - то нотис.

Не критично, но лучше сразу писать правильно.

Изменено пользователем IT-Security
Ссылка на сообщение
Поделиться на других сайтах

eleon, тем более, что в данной ситуации Вы были не правы! Вам ответили и нашли время для этого, а Вы обругиваете человека! Я думаю Вам стоит извиниться, иначе не долго на форуме пробудете в позитивном статусе.

P.S.

Всегда помните, что никто и ничего Вам не должен!

Ссылка на сообщение
Поделиться на других сайтах

IT-Security,

<?php

	error_reporting(E_ALL);

	$var.= "111";
Я имел в виду зачем писать с точкой, когда можно и без неё? Сразу
<?php

	error_reporting(E_ALL);

	$var = '111';

Ссылка на сообщение
Поделиться на других сайтах

Идея в том, чтобы в выводе модуля использовать только .=

А для этого нужно сначала задать переменную. Вообщем-то спор бесполезный. Кому как больше нравится.

Просто чтобы не получилось, что человек не зная PHP налепил везде = без точки, а потом удивлялся почему ничего не работает.

Ссылка на сообщение
Поделиться на других сайтах

'IT-Security',

помоги пожалста на примере, вот вроде все сделал, на основе мануала, и на основе сторонних модулей!

ставлю в main.tpl свой тег вывода и пусто, никаких ошибок не вылезает! вот данный скрипт мониторинга

<?php

//**********************

//***Scripted by Lexy***

// modified by dreamW

//**********************

$servers[]='127.0.0.1:8303';

$servers[]='127.0.0.1:8304';

$servers[]='127.0.0.1:8305';

// $servers[]='yorserver1:yourport1';

// $servers[]='yorserver..N:yourport..N';

$timeout=16;

$i=1;

if (!isset($_GET['serverId'])) { //servers

echo "<div class='buttons'><table align='center' border=0 cellspacing=0 cellpadding=4 width=50% class=liner>";

echo "<tr><td width=15px>&nbsp</td><td>&nbsp</td><td width=22%>&nbsp</td><td>&nbsp</td></tr>";

echo "<tr><td width=15px><small>#</small></td><td><b><small>Server name</small></b></td><td width=22%><b><small>Map</small></b></td><td align='right'><b><small>Players</small></b></td></tr>";

foreach ($servers as $server) {

$info=get_serverdata($server, $timeout);

switch ($info[2])

{

case '1' : $gt = 'Team Deathmatch'; break;

case '2' : $gt = 'Capture the Flag'; break;

default: $gt = 'Deathmatch'; break;

}

echo "<tr><td width=15px>$i</td><td><a href='?serverId=".$i."#mon'>".$info[0]."</a></td><td>".$info[1]."</td><td align='right'>".$info[5].'/'.$info[6]."</td></tr>";

$i++;

}

echo "</table></div>";

} else { //players

$ghtml='';

$serverid=$_GET['serverId'];

$server=$servers[$serverid-1];

$info=get_serverdata($server, $timeout);

echo "<div class='buttons'><table align='center' border=0 cellspacing=0 cellpadding=4 width=50% class=liner>";

echo "<tr><td width=15px>&nbsp</td><td>&nbsp</td><td width=22%>&nbsp</td><td>&nbsp</td></tr>";

echo "<tr><td width=15px><small>#</small></td><td><b><small>Server name</small></b></td><td width=22%><b><small>Map</small></b></td><td align='right'><b><small>Players</small></b></td></tr>";

echo "<tr><td width=15px>$serverid</td><td>".$info[0]."</td><td>".$info[1]."</td><td align='right'>".$info[5].'/'.$info[6]."</td></tr>";

echo "</table></div>";

if($info[5]>0) {

$ghtml.='<br><table style="font-family: tahoma; font-size: 11px; text-align:center; border: 1px #eeeeee solid;" width="50%" align=center ><tr style=" background-color: #f0f0f0"><td>Player</td><td>Score</td></tr>';

for($i=7;$i<=sizeof($info)-2;$i+=2) $ghtml.='<tr><td><b>'.$info[$i].'</b></td><td>'.$info[$i+1].'</td></tr>';

$ghtml.='</table>';

} else $ghtml.='<center>No players online</center>';

echo $ghtml;

}

function get_serverdata($server, $timeout) {

$data=explode(":",$server);

$s_addr=$data[0];

$s_port=$data[1];

$os = @fsockopen('udp://'.@gethostbyname($s_addr), $s_port, $errno, $errstr, $timeout);

if($os) {

fwrite($os,"\xff\xff\xff\xff\xff\xff\xff\xff\xff\xffgief");

$info=explode(chr(00), substr(fread($os,1024),20)); $size = sizeof($info);

if($size>5)

{

fclose($os);

return $info;

}

else

{

echo 'TeeWars Server Not Detected';

return;

}

}

else

{

echo 'Connection failed';

return;

}

}

?>

Ссылка на сообщение
Поделиться на других сайтах

eleon,

забанен за нарушение правил форума http://forum.dle-news.ru/index.php?act=boardrules

оскорбление и угрозы в адрес участников конференции

IT-Security,

получает устное предупреждение, за нарушение правил форума в части:

Если кто-то провоцирует вас на конфликт, лучше воздержитесь от высказываний- этим вы поможете избежать конфликтных ситуаций на форуме. Если у вас возникли какие либо проблемы на форуме, вы всегда можете обратиться напрямую к модераторам и администраторам данного форума- мы будем рады оказать вам посильную помощь.

В случае получения оскорблений лучше воздержаться от ответа на них и сообщить администрации о данном факте.

Ссылка на сообщение
Поделиться на других сайтах

2 Eric:

Я в Вашем коде не вижу НИЧЕГО из того, что я указал в первом посте.

За Вас я этого делать не буду. Делайте согласно мануалу и рассказывайте что не получилось с примером кода.

Ссылка на сообщение
Поделиться на других сайтах

Значит у Вас где-то стоит echo или print.

Если делать так, то вообще ничего не выводиться, если заместь $_per123 вставить echo, то все выводиться, только над дизайном.

<?php

$my_mod_buffer = '';

// Защита от взлома

  if (!defined("DATALIFEENGINE"))

  {

	die("Hacking Attemp!");

  }

// Защита от взлома

// подгружаем файл с настройками модуля, в нём будут храниться те самые 5 строк

require_once (ROOT_DIR.'/engine/data/config.member_info.php'); 

//подгрузили файл с настройками модуля


echo "Инфо из сессии".$_SESSION['dle_user_id'];


//Вывод всех контактов


function func_get_infos_of_member()

{

	$sel_info_mem_query = mysql_query("select * from transdp_member_info where who_user = ".$_SESSION['dle_user_id']." ORDER BY udid ASC ");

	$_per123;

	while ( $info = mysql_fetch_array($sel_info_mem_query))

	{

		$_per123 = "

		<table width=\"793\" border=\"1\">

  <tr>

	<td width=\"270\">{$info[company_pref]} {$info[company_name]}</td>

	<td width=\"81\">{$info[country]}</td>

	<td width=\"95\">{$info[town]}</td>

	<td width=\"125\">{$info[address]}</td>

	<td width=\"6\">{$info[telephone_1]}</td>

	<td width=\"6\">{$info[email]}</td>

	<td width=\"121\">{$info[fio]}</td>

  </tr>

</table>

		";


	}

}



if(@$_GET['act'] == '')

{

func_get_infos_of_member();


$my_mod_buffer.= $_per123; 


// подгружаем оболочку к нашему модулю - это есть часть темы DLE

	 $tpl->load_template('trans_groupe/info_of_company_member.tpl');


// подставляем в оболочке за место всех mymmodyle и т.д. значения наших переменных


$tpl->set("{info_body_member}", $my_mod_buffer);

 //заменили все {blabla} на значения переменных


// хз

	 $tpl->compile('content');

	 $tpl->clear();

// хз

}

?>

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...