<?php $process = shell_exec("ps aux | grep 'ntpd' | grep -v 'grep'"); if($process){ echo 'NTP服务正在运行'; }else{ echo 'NTP服务没有运行'; } ?> html文件用AJAX调用此php文件 实现如果NTP服务正在运行 则显示一个绿色的灯 如果NTP服务没有运行 则显示一个红色的灯
时间: 2024-02-17 11:04:01 浏览: 69
以下是使用AJAX调用上述PHP文件来实现显示绿色或红色灯的HTML和JavaScript代码:
1. HTML代码
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>NTP服务状态</title>
<style>
.green {
width: 50px;
height: 50px;
background-color: green;
border-radius: 50%;
}
.red {
width: 50px;
height: 50px;
background-color: red;
border-radius: 50%;
}
</style>
</head>
<body>
<h1>NTP服务状态</h1>
<div id="status"></div>
<div id="ntplight"></div>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
$(document).ready(function() {
setInterval(function() {
$.ajax({
url: 'ntp_status.php',
type: 'GET',
dataType: 'text',
success: function(data) {
$('#status').html(data);
if (data.indexOf('正在运行') !== -1) {
$('#ntplight').removeClass('red').addClass('green');
} else {
$('#ntplight').removeClass('green').addClass('red');
}
},
error: function() {
$('#status').html('无法获取NTP服务状态');
$('#ntplight').removeClass('green').addClass('red');
}
});
}, 5000); // 每5秒刷新一次
});
</script>
</body>
</html>
```
2. PHP代码(与之前的代码相同,将其保存为ntp_status.php文件)
```php
<?php
$process = shell_exec("ps aux | grep 'ntpd' | grep -v 'grep'");
if($process){
echo 'NTP服务正在运行';
} else {
echo 'NTP服务没有运行';
}
?>
```
以上代码中,我们使用了jQuery库来实现AJAX调用。当页面加载完成后,我们使用setInterval函数来每5秒调用一次ntp_status.php文件。在成功时,我们检查返回的数据是否包含"正在运行"关键字,如果是,则将灯的类从"red"更改为"green";否则,将其从"green"更改为"red"。在出现错误时,我们将状态设置为"无法获取NTP服务状态"并显示红色灯。
阅读全文