Re: [請益] 在連結中執行一段PHP

看板PHP作者 (孟新)時間12年前 (2012/05/19 23:27), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串5/5 (看更多)
※ 引述《LPH66 (杇瑣)》之銘言: : 看起來應該要先問原 PO 一個問題: : 為什麼原 PO 你需要以字串方式儲存一段 php 程式? : 我試著隔空抓藥幾個可能性好了: : (1) 推文說的有一部份程式是外部輸入的: : 這不用我說 推文都回你了那非常危險 : 執行來路不明的程式是個非常大的安全漏洞 : (2) 程式有一部份可能必須動態處理: : 那我就不懂了 有什麼情形是函式傳參數不能解決非得要存成字串才能解決的問題? : 我寫 php 這麼久了還沒遇到這種情形... : (3) 根本就有一部份程式是動態生成的: : 這和 (2) 也一樣 你還是有辦法寫成函式然後讓它傳參數去看要做什麼 : 最簡單的方法就是羅列所有可能然後用個大 switch 去選你要執行什麼 : (我不相信你能夠寫出產生這段程式的程式就不能羅列出所有這種可能) : 有些東西甚至只需要一個變數就能解決的 : ==== : 如果原 PO 你的問題是"開新視窗" : 我必須說那是個最不是問題的問題 : 就如你所說的 你大可以把那段程式另存成一個 php 檔然後開新視窗到那裡去 : 為什麼不呢? 到底是什麼樣子的特殊狀況讓你不能夠做這件事呢? : ==== : 碎碎念完了來提一個(我猜啦)原 PO 應該可以用(或期待我們回)的方法 : 把你所有的程式全部塞在同一個 php 檔裡 : 用 GET 參數來選擇你要做什麼事 : 像是 index.php?action=dosomething 這種樣子 判斷 $_GET["action"] 來做事 : 這樣子不管你想要開幾個新視窗都沒問題了.... ㄜ..的確開新視窗不是主要的問題 我先為什麼要做這種事 這個資料庫不是我們的 是跟我們合作的資料庫提供者 裡面那些程式碼是本來就存在了 所以才要想辦法當取出程式碼時怎麼執行 我也不可能把所有php都抓出來變成檔案 因為那非常大量 而且不時會有新的資料 至於bug的問題 會放在資料庫裡的 就是已經測試過沒有問題 當然我知道這是一個很大的潛在問題 但是那是下一接段才去擔心的問題 現在是要先解決怎麼讓他執行 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 128.12.32.94

05/19 23:32, , 1F
果然是個奇怪的狀況....如果是要先只求能動的話
05/19 23:32, 1F

05/19 23:32, , 2F
之前推文提的 eval 就可以了
05/19 23:32, 2F

05/19 23:34, , 3F
相信原來那些資料庫的使用者也是這麼用的
05/19 23:34, 3F

05/20 17:10, , 4F
就 eval 啊
05/20 17:10, 4F

05/20 17:10, , 5F
另外,這也不是什麼很難得一見的需求
05/20 17:10, 5F
文章代碼(AID): #1FjxlCAy (PHP)
討論串 (同標題文章)
文章代碼(AID): #1FjxlCAy (PHP)