詳解php+ajax開發(fā)的注意事項_PHP教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:解析用PHP操作MySql數據庫
      ?php /* *mysql數據庫分頁類 *@packagepagelist *@authoryytcpt(無影) *@version2008-03-27 *@copyrigthhttp://www.d5s.cn/ */ /* *分頁樣式 .page{float:left;font:11pxArial,Helvetica,sans-serif;padding:6px0;margin:0px10%;margin-top:10px;} .pagea,.pa


      1.注意幾個編碼地方

      1.1表單所在的網頁的:meta

      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

      1.2XMLHTTPRequest GET的編碼

      httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");

      此處設置不對!responseText會返回empty(沒有內容),如果您有FireFox并裝有FireBug組件的話,點擊狀態(tài)欄的綠色箭頭打開控件面板(非OS的,FireBug的),選中Console會看到Response選項是:

      Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation ’=

      當然如果是連接數據庫的話也可能跟下面的(1.4)有關系.

      1.3ajax GET請求的頁面(.php)header

      header("Content-Type:text/html;charset=UTF-8");

      1.4數據連接的編碼

      mysql_query("SET CHARACTER SET UTF8");

      如果你的數據庫是GBK的或其它的字符集,為了統(tǒng)一編碼還要與以上三個統(tǒng)一起來.下面我的示例用的數據庫也是GBK,從昨天開始我一起把它設成:

      mysql_query("SET CHARACTER SET GBK");

      可還是有時發(fā)現會返回空(empty 我用的是ResponseText),千萬不要寫成UTF-8噢,數據庫的字符集是沒有中間的"-"

      2.如果還是返回空或無效的值

      例如:

      a.html中有表單,a用XMLHTTPRequest和b.php通訊.

      首先要保證b.php可以正確運行,例b.php?param=value打印出來的是你期望的值

      如果a.html打印b.php返回的結果(ajax)與上面的(單獨運行b.php)執(zhí)行結果有出入.可以刪除b.php中的空行試試!我想應該不會出現這種情況,但我有幾次作demo刪除后和刪除前確實有出入

      3.下面是朋友發(fā)給我的一個示例!我修改完的源碼

      表單頁:

      分享:解析用PHP操作MySql數據庫(DB類)
      ?php /* *mysql數據庫DB類 *@packagedb *@authoryytcpt(無影) *@version2008-03-27 *@copyrigthhttp://www.d5s.cn/ */ classdb{ varconnection_id=; varpconnect=0; varshutdown_queries=array(); varqueries=array(); varquery_id=; varquery_count=0; v

      共4頁上一頁1234下一頁
      來源:模板無憂//所屬分類:PHP教程/更新時間:2010-02-16
      相關PHP教程