Hallo,
Du solltest das Array $directoutput bei jedem Durchlauf freigeben, da exec() sonst an das Array anhängt anstatt es neu zu beschreiben wenn das Array bereits Werte enthält.
Logisch das der Wert dann unverändert bleibt beim 2. Durchlauf, da ja $directoutput[6] dann immer noch den selben Wert enthält den es beim ersten Durchlauf erhalten hat ;)
Deine While-Schleife sollte also aus aussehen, dann sollte es gehen:
while($row2 = mysql_fetch_object($hostlist2))
{
echo "";
echo $row2->iphost;
echo " | ";
echo $row2->description;
echo " | |
unset($directoutput);
$pingstatus = exec("ping -n 1 ".$row2->iphost,$directoutput,$returnval);
$pingstat = explode("(",$directoutput[6]);
$pingstatclean = explode("%",$pingstat[1]);
$lost = $pingstatclean[0];
if($lost == 0)
{
echo " bgcolor=\"00CC00\">pingable".$lost;
}
else
{
echo " bgcolor=\"CC0000\">not pingable".$lost;
}
echo "
";
}
Cu