【发布时间】:2014-04-09 11:49:03
【问题描述】:
我想通过连接到数据库在 PHP 代码中使用 exec shell。我曾使用过这段代码,但它不起作用!我不知道可能是什么问题,所以这是我的代码:
if(isset($_POST['submit4']))
{
$results = shell_exec("cat /var/log/apache2/access.log | grep" . $_POST['key'] . "| sed s/'^.*apache2'/''/g | sort | uniq -c | sort -nr | cat ");
echo $results ;
}
else if(isset($_POST['submit5']))
{
mysql_connect('127.0.0.1',"root"," ") or die("erreur de connexion au serveur");
mysql_select_db("lastnline");
$sql='Select * from motclef';
$res=mysql_query($sql);
while($row=mysql_fetch_array($res))
{
$results = shell_exec("cat /var/log/apache2/access.log | grep" . $row['nom'] . "| sed s/'^.*apache2'/''/g | sort | uniq -c | sort -nr | cat ");
echo $results ;
}
}
submit4 工作得很好,但是 submit5 不工作:/
【问题讨论】:
-
我猜有问题,因为它
doesn't work -
我可以在你的服务器上执行任意命令。
-
当您发现自己在使用“不起作用”这个短语时,请停下来,转而陈述 (a) 您预期会发生什么,以及 (b) 实际发生了什么。 “不起作用”可能是最没有帮助的错误报告
;)。 -
请问这段代码是否正确: $results = shell_exec("cat /var/log/apache2/access.log | grep" . $row['nom'] . "| sed s/'^.*apache2'/''/g | sort | uniq -c | sort -nr | cat ");回声 $results ;