posts - 48,comments - 156,trackbacks - 0

          原來認(rèn)為寫一個(gè)留言板應(yīng)該是比較容易的事情,從沒動(dòng)過手,這回試著寫了一個(gè),感覺即容易也不容易。

          容易的方面是留言板的結(jié)構(gòu)很簡(jiǎn)單,發(fā)送數(shù)據(jù)到服務(wù)器->保存到數(shù)據(jù)庫(kù)->返回新的數(shù)據(jù)到瀏覽器->刷新頁(yè)面

          不容易的地方是很多細(xì)節(jié)要注意,不知道什么地方一個(gè)小問題就出錯(cuò)了。

          這個(gè)留言板前臺(tái)使用 Flex ,文件二百多K,初次加載比較慢,運(yùn)行起來就快了。后臺(tái)使用 PHP ,用了 Codeigniter 框架,再加上大部分工作都有前臺(tái)做,整個(gè)后臺(tái)代碼不到二十行。

          前后臺(tái)通信使用最簡(jiǎn)單的 http 頁(yè)面方式,數(shù)據(jù)用 JSON 包裝,JSON 極大的簡(jiǎn)化了工作流程,從數(shù)據(jù)庫(kù)取出數(shù)據(jù),轉(zhuǎn)換成對(duì)象數(shù)組,把數(shù)組編碼成字符串,寫到頁(yè)面,整個(gè)過程就OK了,到了前臺(tái)再將這些字符串一解析,又還原成了對(duì)象。

          看看返回的數(shù)據(jù)到底是什么樣子,點(diǎn)擊下面這個(gè)鏈接你可以看到 0 號(hào)頁(yè)面返回的內(nèi)容,有一些百分號(hào)之類的東西,那是因?yàn)樗凶址季幋a了:
          http://myqiao.oxyhost.com/ci/index.php/bbs/action_show/0

          下面看看代碼是如何的簡(jiǎn)單吧

              function show($page_no)
              {
                  
          //計(jì)算分頁(yè)數(shù)
                  $record_count=$this->db->count_all('t_message');
                  
          $page_count= Floor(($record_count-1)/PAGE_SIZE);
                  
          if($page_count<0)
                      
          $page_count=0;
                  
                  
          //查詢當(dāng)前頁(yè)面留言
                  $this->db->order_by("id", "desc");
                  
          $query = $this->db->get('t_message', 10, 10*$page_no);

                  
          //將前臺(tái)需要的數(shù)據(jù)裝配成數(shù)組
                  $arr = array(
                        //當(dāng)前頁(yè)面號(hào)
                      'current_no' => "{$page_no}" ,
                      
          'page_count' =>"{$page_count}" ,
                      
          'record_count' =>"{$record_count}" ,
                      
          //下面字段保存10條留言信息,包括username , content, time
                      'message' => $query->result_array()
                  );
                  
          $json_string=$this->json->encode($arr);
                  
          echo  $json_string;    
              }

           

          留言板試用和查看全部源代碼點(diǎn)擊這里

          進(jìn)入留言板,點(diǎn)右鍵,彈出菜單選擇 View Source 就可以看見源代碼了

          服務(wù)器是國(guó)外的一個(gè)免費(fèi) php 服務(wù)器,可能速度有點(diǎn)慢,大家發(fā)現(xiàn)什么錯(cuò)誤給我留言哦。



          posted on 2009-04-12 14:53 左洸 閱讀(1645) 評(píng)論(1)  編輯  收藏

          FeedBack:
          # re: 基于 Json 的富客戶端簡(jiǎn)易分頁(yè)留言板設(shè)計(jì),附源碼
          2009-04-12 23:18 | CoderDream
          不錯(cuò),感謝分享!JSON是個(gè)好東西!  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 丹凤县| 东方市| 理塘县| 夏邑县| 吉水县| 西藏| 略阳县| 香格里拉县| 宁晋县| 双辽市| 静乐县| 洛南县| 丰顺县| 松原市| 大化| 威海市| 盐亭县| 航空| 台南市| 桓台县| 和硕县| 清远市| 太白县| 寿宁县| 竹山县| 松潘县| 沽源县| 威海市| 潍坊市| 龙山县| 富顺县| 江安县| 肇庆市| 烟台市| 安福县| 辽阳市| 晋城| 凤冈县| 盐源县| 太仓市| 伊吾县|