怎麼查看android回傳給php-server(依託discuz的介面)參數後執行的sql語句

來源:互聯網
上載者:User
如何查看android回傳給php-server(依託discuz的介面)參數後執行的sql語句
項目配置描述如下:
伺服器端:discuz,正在調試串連android的伺服器端介面(用來接收android端發送過來的請求)
用戶端:Android4.4

問題流程描述如下:
android端在論壇發帖後,使用httppost封裝參數,通過httpclient發送到php端的相關url;在php端執行相關的sql操作,通過mysql_query返回true或者false給android端。

問題描述如下:
現在在android端得到發帖返回的結果是{"result":"post failed"} ,(ˇ?ˇ) 想到可能是php端在執行sql操作時發生了錯誤,想查看php端執行的sql語句。由於我的php介面是依託於discuz的,如果單獨將該介面通過zend studio部署到Apache的htdocs,我試過,沒有部署成功,無法接收android端發送的參數

想諮詢下大家,
1)有沒有可能將此介面部署到apache以接收android端的資料(win7,apache,mysql,php5.25,zend studio 10.0)
2)如果沒有,怎麼調試android端傳送給php服務端的參數;現在主要想查看回傳給php服務端後,執行的sql語句。

先謝謝大家了
------解決方案--------------------
這個問題剛好我也遇到了,解決辦法如下
找到:\source\class\discuz\discuz_error.php,並開啟
搜尋:show_error($type, $errormsg, $phpmsg = '', $typemsg = '')
在show_error函數下面,用file_put_contents函數將$errormsg列印到一個txt裡面
public static function show_error($type, $errormsg, $phpmsg = '', $typemsg = '') {
global $_G;
file_put_contents(DISCUZ_ROOT.'./appapi/log.txt',$errormsg.PHP_EOL,FILE_APPEND);
ob_end_clean();
$gzip = getglobal('gzipcompress');
ob_start($gzip ? 'ob_gzhandler' : null);
//後面的就不複製了...

}

缺點就是,discuz的所有sql錯誤都會記錄在裡面,當然一般discuz報的sql錯誤還是很少的
------解決方案--------------------
若你想和discuz的資料完美結合,並減少開發時間的話,建議你還是用discuz已有的DB類和方法
我不知道zend 在哪裡處理了sql,不過執行sql錯誤,你可以用mysql_error()擷取錯誤資訊,用file_put_contents輸出到一個txt裡面
------解決方案--------------------
把你介面的相關代碼亮出來。
沒代碼怎麼解決問題。。。
------解決方案--------------------
這個需要看你的介面了,能不能手工單獨調試?
如果能,你只需要關心傳送的參數
------解決方案--------------------
像你這樣對發揮資料做了封裝的系統,需要對用戶端和服務端分開來調試

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.