$serverid = mysql_query("SELECT * FROM serveripank");
while($row = mysql_fetch_array($serverid)) {
require_once('../getdata/cs-getdata.php');
$result = $cstrike->getData();
$SNAME = $result['cstrike']['ServerVars']['servername']; //Server name
$SMAP = $result['cstrike']['ServerVars']['mapname']; //Map name
$SCP = $result['cstrike']['ServerVars']['currentplayers']; //Server Current Players
$SMP = $result['cstrike']['ServerVars']['maxplayers']; //Server Max Players
// Servers name MAX 25 letters & Map
$SNAME = substr($SNAME, 0, 25);
$SMAP = substr($SMAP, 0, 20);
$id = $row['id'];
mysql_query("UPDATE serveripank SET players = '$SCP' WHERE id = '$id'");
mysql_query("UPDATE serveripank SET maxplayers = '$SMP' WHERE id = '$id'");
mysql_query("UPDATE serveripank SET map = '$SMAP' WHERE id = '$id'");
mysql_query("UPDATE serveripank SET srname = '$SNAME' WHERE id = '$id'");
}
Im, используя этот script http://dev.ush-network.de/2010/02/02/gathering-counter-strike-data-using-php-sockets/comment-page-1/#comment-22 в require_once('../getdata/cs-getdata.php');
Когда я перейду к ссылке, чтобы обновить мою базу данных MYSQL, она не отображает никаких ошибок, но в базе данных строки пустые.
Это в моем файле cs-getdata.php @внизу, поэтому он может обновить все серверы с правильными значениями... (не знаю, как лучше объяснить)
list($ip, $port) = explode(":", "row['ip']");
$cstrike = new cstrike_statistics();
$cstrike->setHostname('$ip');
$cstrike->setPort($port);
Моя проблема заключается в том, что он не получает информацию о сервере/и помещает пустые значения в базу данных.
Боже мой, почему никто не заметил мою глупую ошибку?
list($ip, $port) = explode(":", "row['ip']");
$cstrike = new cstrike_statistics();
$cstrike->setHostname('$ip');
$cstrike->setPort($port);
должен быть
list($ip, $port) = explode(":", "$row['ip']");
$cstrike = new cstrike_statistics();
$cstrike->setHostname('$ip');
$cstrike->setPort($port);
Ошибка была: $row['ip']
$cstrike->setHostname($ip);
без единой цитаты
echo mysql_error();
чтобы увидеть любые ошибки