考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
  当前位置:设计制作 > JavaScript > 文章内容
  

基于Json的富客户端简易分页留言板设计

 [ 2017年6月23日 ] 【

  原来认为写一个留言板应该是比较容易的事情,从没动过手,这回试着写了一 个,感觉即容易也不容易。

  容易的方面是留言板的结构很简单,发送数据到服务器->保存到数据库- >返回新的数据到浏览器->刷新页面

  不容易的地方是很多细节要注意,不知道什么地方一个小问题就出错了。

  这个留言板前台使用 Flex ,文件二百多K,初次加载比较慢,运行起来就快 了。后台使用 PHP ,用了 Codeigniter 框架,再加上大部分工作都有前台做, 整个后台代码不到二十行。

  前后台通信使用最简单的 http 页面方式,数据用 JSON 包装,JSON 极大的 简化了工作流程,从数据库取出数据,转换成对象数组,把数组编码成字符串, 写到页面,整个过程就OK了,到了前台再将这些字符串一解析,又还原成了对象 。

  看看返回的数据到底是什么样子,点击下面这个链接你可以看到 0 号页面返 回的内容,有一些百分号之类的东西,那是因为所有字符串都编码了:

  //myqiao.oxyhost.com/ci/index.php/bbs/action_show/0

  下面看看代码是如何的简单吧

  function show($page_no)

  {

  //计算分页数

  $record_count=$this->db->count_all ('t_message');

  $page_count= Floor(($record_count-1)/PAGE_SIZE);

  if($page_count<0)

  $page_count=0;

  //从 t_message 表中查询当前页面留言

  $this->db->order_by("id", "desc");

  $query = $this->db->get('t_message', 10, 10*$page_no);

  //将前台需要的数据装配成数组

  $arr = array(

  //当前页面号

  'current_no' => "{$page_no}" ,

  'page_count' =>"{$page_count}" ,

  'record_count' =>"{$record_count}" ,

  //下面字段保存10条从数据空中查询来的留言信息, 字段包括id username , content, time

  'message' => $query->result_array()

  );

  //将数组编码成字符串

  $json_string=$this->json->encode($arr);

  //响应给浏览器

  echo  $json_string;

  }

本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved