作者blackhothot (天冷~比不上心冷)
看板PHP
標題[請益] 如何在網頁上顯示出編譯錯誤訊息
時間Wed Sep 8 12:05:09 2010
小弟目前在寫一個網站
是由client端連上server後,把cpp檔傳上server那
然後經由php連cmd來做編譯的動作
php連接cmd的動作是用system()來執行
現在,編譯成功的話,已有執行檔可以出現
但是編譯失敗(程式碼有誤)時,卻無法印出錯誤訊息
同樣的方法,我試過用system("dir")來做測試
是可以把指令下顯示出的東西全部印上網頁的
所以這是因為我有做編譯的動作,才會無法顯示嗎?
不知道該在哪板發問,就先發在這邊了
如果最後這問題不屬於php範圍內,小弟會盡快刪除
麻煩一下各位大大幫解惑一下,感恩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.253.107.50
1F:→ guardlan:system指令只會回傳結果的最後一行, 請改用exec看看 09/08 12:20
這個小弟也試過了,不過還是沒有辦法顯示出來。是因為需要指令後面加變數存回傳值嗎?
※ 編輯: blackhothot 來自: 111.253.107.50 (09/08 13:19)
2F:推 roga:try passthru 09/08 15:31
3F:推 buganini:shell_exec() 另外 錯誤訊息可能是在stderr 09/08 18:35
4F:→ buganini:你可能需要自己把他轉到stdout 09/08 18:35
請問一下,stderr和stdout好像不是php裡的函式?是用在php時有其他用法嗎?
我在php的函式庫中找不到
※ 編輯: blackhothot 來自: 111.253.104.189 (09/13 12:09)
5F:推 cspy:這有點像是PATH的的問題耶 = = 請問你compile後的程式在哪啊 09/14 01:02
我compile後的程式在我設定上傳cpp檔路徑中,也就是跟cpp檔同資料夾
※ 編輯: blackhothot 來自: 111.253.106.67 (09/14 10:54)