程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHPCMS通過getJSON調用的地址方法必須加public

PHPCMS通過getJSON調用的地址方法必須加public

編輯:關於PHP編程

今天遇到一個getJSON的問題,回調函數一直無法執行,檢查了生成的json數據的格式絕對沒問題,getJSON的js語法也沒問題,但就是alert不出來傳回的數據。原來是phpcms的check_hash()函數對遠程調用的方法進行了安全驗證,方法名前沒public_的都不能通過

  (('/^public_/', ROUTE_A) || ROUTE_M =='admin' && ROUTE_C =='index' || (ROUTE_A, ('login' ((['pc_hash']) && ['pc_hash'] != '' && (['pc_hash'] == ['pc_hash' ((['pc_hash']) && ['pc_hash'] != '' && (['pc_hash'] == ['pc_hash' 'hash_check_false'),

phpcms給函數進行了hash驗證,因此,現在方法是這樣寫的:

  public_mobile_getjson_ids() {
     = (['modelid' = (['id'->db->set_model( = ->db->->db->table_name = .'_data' = ->db->get_one(('id'=>),'mobile_type'(['mobile_type' = ('|', ',', ['mobile_type' = (,',' = "id IN()" = ->mobile_db = pc_base::load_model ( 'mobile_type_model' = ->mobile_db->select(,'id,type_name'
        (  ['sid'] = 'v'.['id'((CHARSET)=='gbk') ['type_name'] = ('gbk', 'utf-8', ['type_name'[] =  json_encode(

js部分的getJSON是這樣寫的:

"?m=content&c=content&a=public_mobile_getjson_ids&modelid="+modelid+"&id="+id,  newrelation_ids = ''(json=='沒有添加相關文章' += "<li id='"+n.sid+"'>·<span>"+n.type_name+"</span><a href='javascript:;' class='close' onclick=\"remove_relation('"+n.sid+"',"+n.id+")\"></a></li>"'#mobile_type_text'

就好了。要注意phpcms裡面調用遠程地址,方法前加上public啊!!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved