Предната ми тема беше -
тазиВ която извадих успешно статуса.
Сега идва ред на бутоните. (опитах няколко пъти да се справя сам, но не успях)
Ето как ги изваждам:
<?php
session_start();
if (isset($_SESSION['email'])) {
$port = (int)$_GET['port'];
$ping = shell_exec("netstat -an | grep $port");
if($ping !=NULL) {
$status = "<b style='color:green'>on</b> [<a href='control/server_off.php?port=$port'>Спри сървъра</a>]";
} else {
$status = "<b style='color:red'>off</b> [<a href='control/server_on.php?port=$port'>Пусни сървъра</a>]";
}
echo json_encode(array('status' => $status));
} else {
echo "permission denied";
}
?>Двата бутона са това:
[<a href='control/server_off.php?port=$port'>Спри сървъра</a>]
[<a href='control/server_on.php?port=$port'>Пусни сървъра</a>]Ето и къде се показват:


Целта е динамично да се обновява статуса и самия линк, тоест, като кликна:

да ми излиза без рефреш на страницата:

и обратно.
Скриптовете на бутоните:
server_off.php:
<?php
session_start();
if (isset($_SESSION['email'])) {
include("../config.php");
$port = (int)$_GET['port'];
$email = $_SESSION['email'];
$res = mysql_query("SELECT * FROM servers WHERE serverport='$port' AND email='$email' AND expiredin>UNIX_TIMESTAMP();") or die(mysql_error());
$result = mysql_fetch_assoc($res);
if (mysql_num_rows($res) == 1) {
$go = shell_exec("sudo fuser -n udp -k $port");
} else {
echo "fail";
}
} else {
echo "permission denied";
}
?>server_on.php:
<?php
session_start();
if (isset($_SESSION['email'])) {
include("../config.php");
$port = (int)$_GET['port'];
$email = $_SESSION['email'];
$res = mysql_query("SELECT * FROM servers WHERE serverport='$port' AND email='$email' AND expiredin>UNIX_TIMESTAMP();") or die(mysql_error());
$result = mysql_fetch_assoc($res);
$ime2 = $result['ime2'];
if (mysql_num_rows($res) == 1) {
$go = shell_exec("taskset -c $core /usr/bin/screen -A -m -d -S $ime2");
} else {
echo "fail";
}
}
else {
echo "permission denied";
}
?>