В общем пингует сервер и записывает в таблицу wp_postmeta сравнивая по ID поста... хотелось бы сделать этот файл на крон. как сделать что бы он открывал таблицу wp_postmeta в ней по meta_key "_content_field_8" если пустой пропускает если в нем есть значение meta_value "в нем IP сервера" пингует и записывает по его post_id возможно ли вообще такое... я просто нуб в этом... данный скрипт работает все записывает но желательно его на крон
Заранее спасибо большое!
В общем есть таблица wp_postmeta
в ней есть столбы post_id meta_key meta_value players maxplayers status и тд
есть ячейки post_id (например 568) meta_key (_content_field_8) а вот meta_value разное там IP указан и по скрипту он по номеру поста post_id берет данные IP и пингует сервер и данные возвращает в таблицу записывает в players maxplayers и тд
я же хочу что бы данный скрипт находит _content_field_8 в нем берет meta_value Там IP - пингует и возвращает данные по post_id у которого брал meta_value
может я просто как то сложно объясняю ((( Тут картинку никак не загрузить (((((
Добавлено через 29 минут
я так понимаю надо сделать перебор строк то есть
ID100 _content_field_8 пусто идем дальше
ID101 _content_field_8 IP123.123.123 пингуем
возвращаем данные
ID101 _content_field_8 IP123.123.123 Players30 MaxPlayers100 Status1
ID102 _content_field_8 IP111.222.333 пингуем
возвращаем данные
ID102 _content_field_8 IP111.222.333 Players50 MaxPlayers1000 Status1
ID103 _content_field_8 ПУСТО идем дальше
ID104 и тд
$server_id = get_the_ID();
$meta_values = get_post_meta($server_id, '_content_field_8', true);
$post_ipserv = get_metadata('post', $server_id, '_content_field_8', true);
$kart = get_post_meta($server_id, '_content_field_10', true);
$server_id = $server_data['post_id'];
$info = array();
if($server_data['cache_time'] > time() - $settings['server_cache']){
$info['status'] = $server_data['status'];
$info['Players'] = $server_data['Players'];
$info['MaxPlayers'] = $server_data['MaxPlayers'];
$info['serverVersion'] = $server_data['serverVersion'];
$info['HostName'] = $server_data['HostName'];
if($info['status'] == 1){ $status = 1; } else { $status = 0; }
} else {
//Server checks
$info = QueryMinecraft($meta_values);
//Check status of the server
if($info['status'] == 1){ $status = 1; } else { $status = 0; }
//Update the cache
if($status == 1) {
mysql_query("UPDATE `wp_postmeta` SET `status` = '$status', `Players` = '{$info['Players']}', `MaxPlayers` = '{$info['MaxPlayers']}', `serverVersion` = '{$info['serverVersion']}', `cache_time` = unix_timestamp() WHERE `meta_value` = '$meta_values'");
}else{
mysql_query("UPDATE `wp_postmeta` SET `status` = '$status', `Players` = '0', `cache_time` = unix_timestamp() WHERE `meta_value` = '$meta_values");
}
}