Fonksiyon halinde kullanmayınca tablodaki tüm sunuculara komutu yollayıp cevapları alıp ekrana basıyor fakat fonksiyon içine alınıp istenilen html tagının içine çağrılınca sadece ilkini basıyor.
<?php
function Load($load = "awk '{ print $1\" \" $2\" \" $3 }' /proc/loadavg"){
require('config.php');
$sql = $db->prepare("SELECT * FROM servers");
$sql->execute();
while($row=$sql->fetch(PDO::FETCH_ASSOC)) {
if (!function_exists("ssh2_connect")) die("SSH2 fonksiyonu bulunmuyor.");
if(!($conn = ssh2_connect($row['serverIP'], $row['serverPort']))){
echo "Bağlantıda problem/ler mevcut.\n";
} else {
if(!ssh2_auth_password($conn, $row['serverUser'], $row['serverPass'])) {
echo "Kimlik doğrulaması başarısız.\n";
} else {
if (!($stream = ssh2_exec($conn, $load))) {
echo "Komut gönderilemedi\n";
} else {
stream_set_blocking($stream, true);
$data = "";
while ($buf = fread($stream,4096)) {
$data .= $buf;
}
fclose($stream);
if($data < "0.10 0.10 0.10"){
return $row['serverName']."<font color=green> ".$data."</font><br>";
}
else if($data < "0.20 0.20 0.20"){
return $row['serverName']."<font color=orange> ".$data."</font><br>";
}
else{
return $row['serverName']."<font color=red> ".$data."</font><br>";
}
}
}
}
}
}
?>Örnek kullanım : <li><?php echo Load(); ?></li>
