$servers = dbquery("SELECT * FROM ".DB_SERVERS);
while($r=dbarray_fetch($servers)) {
$serv=serverInfo("$ip:$port");
if($serv['status']=='off'){
$result = dbquery("UPDATE amx_servers
SET
server_status = '0',
server_map = '',
server_players = '0',
server_maxplayers = '0'
WHERE server_ip='".$r['server_ip']."'");
continue;}
$name=name_filtered($serv['name']);
$result = dbquery("
UPDATE amx_servers
SET
server_name = '".$name."',
server_map = '".$serv['map']."',
server_players = '".$serv['players']."',
server_maxplayers = '".$serv['max_players']."',
server_status = '1'
WHERE server_ip='$ip:$port'");
}
Засунул его в файл который выбрасывает в браузер инфу о сервере
Но проблема в том, что каждый раз когда обновляешь файл он каждый раз делает запрос к базе чтобы обновить информацию.
Есть код который выводит инфу из бабы
$q = dbquery("SELECT * FROM ".DB_SERVERS." WHERE server_ip = '$ip:$port'"); //Вывод
И код который записывает в базу из $_GET запроса
$insert = dbquery("INSERT INTO amx_servers (server_ip, server_name) VALUES('$ip:$port', 'Подождите 5 Минут')"); //Запись
Суть в чем, нужно сделать так. Добавляется новый ip:port в базу, он его сразу обновляет. Если такой Ip:port Уже есть в базе, он его обновлять не будет.
Пробовал создавать условия. Отклик от строки вывода. Если запрос вернулся, он не открывает код. Если не вернулся, по идеи он должен задействовать код. Но что то не работает.
$q = dbquery("SELECT * FROM ".DB_SERVERS." WHERE server_ip = '$ip:$port'"); //Вывод
if (mysql_num_rows($q)>0)
{
echo "Запись уже есть. Обновление OFF";
}
else
{
$servers = dbquery("SELECT * FROM ".DB_SERVERS);
while($r=dbarray_fetch($servers)) {
$serv=serverInfo("$ip:$port");
if($serv['status']=='off'){
$result = dbquery("UPDATE amx_servers
SET
server_status = '0',
server_map = '',
server_players = '0',
server_maxplayers = '0'
WHERE server_ip='".$r['server_ip']."'");
continue;}
$name=name_filtered($serv['name']);
$result = dbquery("
UPDATE amx_servers
SET
server_name = '".$name."',
server_map = '".$serv['map']."',
server_players = '".$serv['players']."',
server_maxplayers = '".$serv['max_players']."',
server_status = '1'
WHERE server_ip='$ip:$port'");
}
}
Спустя 20 минут, 43 секунды (15.03.2012 - 15:06) 715kg написал(а):
Все сделал. Тему можно удалить. )))