[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не пишет значения в базу
Страницы: 1, 2, 3, 4
TriSTaR
Помогите пожалуйста я уже запарился, к тому же завтра отчёт перед начальством
Пишу/отлаживаю скрипт, который смог бы пропинговать все ip адреса, находящиеся в столбце
ip_address

user posted image

и по состоянии компьютера (включен ли он или выключен) писал отчёт в строку status. Т.е. если компьютер находится онлайн, в столбец "status" писать значение 1, а если оффлайн - 0

user posted image

А вот скрипт:
<?php
$link = mysqli_connect("192.168.10.56", "test", "test", "test");

if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}

echo "Работает: Подключение с базой данных имеется!" . PHP_EOL;
echo "Информация о хосте: " . mysqli_get_host_info($link) . PHP_EOL;

// берем из таблицы список ip адресов
$result = mysqli_query($link, "SELECT ip_address FROM devices");
if ($result) { // если список есть
$ok = $bad = Array(); // в этих массивах будем хранить списки адресов
после проверки
while ($row = mysqli_fetch_assoc($result)) { // прокручиваемся через
него по одному
exec("ping -c 1 " . $row["ip_address"], $output, $execResult); //
пингуем адрес
if ($execResult == 0) { // в зависимости от результатов пинга
заносим адрес в массив
$ok[] = $row["ip_address"];
} else {
$bad[] = $row["ip_address"];
}
}

echo $bad;
// если есть OK адреса - обновлем все сразу одним запросом
if (Count($ok)) {
mysqli_query($link, "UPDATE 'test'.'devices' SET `status`='1'
WHERE `ip_address` IN ('"
.implode("', '", $ok)."')");
}
// если есть BAD адреса - обновлем все сразу одним запросом
if (Count($bad)) {
mysqli_query($link, "UPDATE 'test'.'devices' SET `status`='0'
WHERE `ip_address` IN ('"
.implode("', '", $bad)."')");
}
}

?>

Где что не так?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.