在php中执行ping命令并在网页上获取交互式输出

时间:2015-02-11 15:42:05

标签: php bash web-services ping

我尝试使用php运行ping命令:

<?php
    $response = shell_exec('ping -c 4 '. $_POST['host']);
    echo "<div class=\"response\">".$response."</div>";
?>

但是我从输入框中发布了主机名,然后运行这个php脚本。这可以工作但仅在命令成功运行时不显示输出

https://w3dt.net/tools/ping

当我提供&#34; www.google.com&#34;它以交互方式显示结果。你能否帮助我建立互动 w3dt.net 或建议我实现这一目标。

1 个答案:

答案 0 :(得分:1)

  1. 您链接到的工具使用WebSockets呈现&#34;互动&#34;输出。

  2. 您永远不应将任何未经检查的用户输入传递给shell_exec()调用,因为这将使任何人都可以运行几乎所有的shell命令(通过指定,例如&#34; google.com&amp;&amp; rm -rf /&#34;作为主机名。)