2013-02-22 91 views
-1

我想知道是否有可能讓php命令回顯一個全新的php集合。在`echo(「」)中執行php命令;`comman

<?php 
$phpcmd=$_POST["phpcmd"]; 
echo "<?".$phpcmd."?>"; 
?> 

<form action="" method="post"> 
<input type="text" value="<?echo($phpcmd)?>" name="phpcmd"> 
<input type="submit"> 
</form> 
+0

嘗試echo'

'; – Ares 2013-02-22 16:27:57

+0

@Ares沒有工作的結果是什麼。 – master101 2013-02-22 16:31:05

回答

3

你可以做到這一點使用:

eval($phpcmd); 

但是...

我會強烈建議你不要,想想這樣的安全隱患,惡意用戶用這樣的腳本可能會造成很多傷害。

作爲PHP docs狀態:

中的eval()語言結構是非常危險的,因爲它允許 執行的任意PHP代碼。因此不鼓勵它的使用。如果您 已仔細驗證除了使用此構造外沒有其他選擇,請特別注意不要將任何用戶提供的數據 加入其中,而不事先對其進行正確驗證。

查看this article瞭解關於eval()功能的更多信息。

+0

我正在使用的頁面位於my/ftp /目錄中,我是唯一有權訪問它的人。所以我不擔心人們訪問這個頁面。 – master101 2013-02-22 16:42:08

+0

謝謝,這正是我需要的。 – master101 2013-02-22 16:46:08

+0

而且我知道一系列可以從字符串中刪除某些輸入的命令。 – master101 2013-02-22 16:59:48