У меня есть цикл, показывающий информацию о множестве разных серверов из базы данных. Теперь я пытаюсь написать, если они онлайн или офлайн. Я попытался написать вручную ip-адрес и порт в srcipt, и он отлично работает. Однако, когда я попытался поместить таблицу в переменную, она показывает, что все в автономном режиме. Большинство из них используют порт 44405, поэтому я сейчас вручную его проверю.Проверка состояния сервера - онлайн/оффлайн
EDIT: Да, я знаю, что этот код MySQL готов и ждет инъекции: D
<?php //-----loading servers to website-----
error_reporting(E_ALL);
ini_set('display_errors','1');
$connection = //deleted this part coz includes personal info :D
$alldata = mysql_query("SELECT * FROM muonline ORDER BY id DESC;");
while ($loadservers = mysql_fetch_assoc($alldata)) {
echo "<tr>";
echo '<td>'; //-----here starts the online/offline part of script-----
$serwer = $loadservers['serverAddress'];
$port="44405";
[email protected]($serwer,$port,$errno,$errstr,2);
if($socket==true)
{
echo "<p>online</p>";
}else{
echo "<p>offline</p>";
}
echo '</td>';
//------- here is being loaded rest of info of the each server-----
echo "<td><p>" .$loadservers['serverName']."</p></td>";
echo "<td><p>". '<a href="' .$loadservers['serverAddress'].'"target="_blank"><p>'.$loadservers['serverAddress']. "</p></a>". "</td>";
echo "<td><p>" .$loadservers['serverExp']. "</p></td>";
echo "<td><p>" .$loadservers['serverDrop']. "</p></td>";
echo "<td><p>" .$loadservers['info']. "</p></td>";
echo "</tr>";
}
mysql_close();
?>
Эхо значение '$ serwer' - дважды проверьте его, что вы ожидаете. –
Также удалите @ перед 'fsockopen' - он будет подавлять любые сообщения об ошибках, которые вы получаете здесь. –
Спасибо за отличный совет. Я повторил это, и веб-сайт показывает мне адреса конкретных серверов, таких как http: // www .... так что именно то, что я хотел, и кажется правильным – LetMeLearn123