基于php与mysql的投票系统设计内容摘要:

,39。 ,array_keys($data))。 //定义 SQL 语句的字段部分 foreach($data as $key = $val) //组合 SQL 语句的值部分 { $value .= 39。 . $val . 39。 if($key count($data) 1) //判断是否到数组的最后一个值 $value .= ,。 } $sql = INSERT INTO . $name . ( . $field . ) VALUES( . $value . )。 return $thisinsert($sql)。 } /** * 功能:更新指定表指定 ID 的调查表记录 * 参数: $name 表名称, $id 表 ID, $data 数组 (格式: $data[39。 字段名 39。 ] = 值 ) * 返回: TRUE OR FALSE */ public function updateData($name,$id,$data){ $col = array()。 foreach ($data as $key = $value) { $col[] = $key . =39。 . $value . 39。 } $sql = UPDATE . $name . SET . implode(39。 ,39。 ,$col) . WHERE F_ID = $id。 return $thisupdate($sql)。 } /** * 功能:删除指定 ID 的调查表记录及相关表记录 * 参数: $id 调查表 ID * 返回: TRUE OR FALSE */ public function delData($id){ $thisbegintransaction()。 try{ $sql = DELETE FROM . $this_item . WHERE F_ID_VOTE_INFO = . $id。 $thisdelete($sql)。 //删除调查选项里面的相关数据 $sql = DELETE FROM . $this_user . WHERE F_ID_VOTE_INFO = . $id。 $thisdelete($sql)。 //删除用户统计表里面的相关数据 $sql = DELETE FROM . $this_name . WHERE F_ID = . $id。 $thisdelete($sql)。 }catch(Exception $e){ $thisrollback()。 return false。 } $thismit()。 return true。 } /** * 功能:提取指定调查 ID 的选项 * 参数: $vote_id 调查 ID * 返回:数组 */ public function getItemList($vote_id) { $sql = SELECT * FROM . $this_item . WHERE F_ID_VOTE_INFO = $vote_id。 return $thisselect($sql)。 } /** * 功能:删除指定 ID 的选项表记录 . . * 参数: $id 表 ID * 返回: TRUE OR FALSE */ public function delItemData($id) { $sql = DELETE FROM . $this_item . WHERE F_ID = $id。 return $thisdelete($sql)。 $sql .= “ ORDER BY F_ITEM_ORDER”。 } /** * 功能:提取指定调查 ID 的用户统计信息 * 参数: $vote_id 调查 ID, $page 当前页码 * 返回:数组 */ public function getUserList($vote_id,$page=1) { $start = ($page 1) * $this_pagesize。 $sql = SELECT * FROM . $this_user . WHERE F_ID_VOTE_INFO = $vote_id。 $sql .= LIMIT $start,$this_pagesize。 return $thisselect($sql)。 } /** * 功能:提取指定调查 ID 用户统计记 录的条数 * 参数: $vote_id 调查 ID * 返回:记录条数 */ public function getUserCount($vote_id) { $sql = SELECT COUNT(F_ID) FROM . $this_user . WHERE F_ID_VOTE_INFO = $vote_id。 $r = $thisselect($sql)。 return $r[0][0]。 } /** * 功能:删除指定 ID 的用户统计记录 * 参 数: $id 用户统计表 ID * 返回: TRUE OR FALSE */ public function delUserData($id) { $sql = DELETE FROM . $this_user . WHERE F_ID = $id。 return $thisdelete($sql)。 } } ? 对单个表进行查询、插入、更新和删除时的代码很相似,唯一不同的是操作表的名称。 这里可以把这些对单个表的基本操作放到基础类文件 里面。 加入如下代 码: /** * 功能:提取指定表的指定 ID 的记录 * 参数: $id 表 ID, $name 表名称 * 返回:数组 */ public function getInfo($id,$name) { $sql = SELECT * FROM . $name . WHERE F_ID = $id。 $r = $thisselect($sql)。 return $r[0]。 . . } /** * 功能:向指定表中插入数据 * 参数: $name 表名称, $data 数组 (格式: $data[39。 字段名 39。 ] = 值 ) * 返回:插入记录 ID */ public function insertData($name,$data) { $field = implode(39。 ,39。 ,array_keys($data))。 //定义 SQL 语句的字段部分 $i = 0。 foreach($data as $key = $val) //组合 SQL 语句的值部分 { $value .= 39。 . $val . 39。 if($i count($data) 1) //判断是否到数组的最后一个值 $value .= ,。 $i++。 } $sql = INSERT INTO . $name . ( . $field . ) VALUES( . $value . )。 return $thisinsert($sql)。 } /** * 功能:更新指定表指定 ID 的调查表记录 * 参数: $name 表名称, $id 表 ID, $data 数组 (格式: $data[39。 字 段名 39。 ] = 值 ) * 返回: TRUE OR FALSE */ public function updateData($name,$id,$data){ $col = array()。 foreach ($data as $key = $value) { $col[] = $key . =39。 . $value . 39。 } $sql = UPDATE . $name . SET . implode(39。 ,39。 ,$col) . WHERE F_ID = $id。 return $thisupdate($sql)。 } /** * 功能:删除指定 ID 的表记录 * 参数: $id 表 ID, $name 表名称 * 返回: TRUE OR FALSE */ public function delData($id,$name) { $sql = DELETE FROM . $name . WHERE F_ID = $id。 return $thisdelete($sql)。 } . . 调查列表文件 该文件的功能是显示调查信息表 中的数据列表。 该文件包含配置文件调查类文件。 提取列表的数据是通过调查类文件里面的提取列表方法来实现的。 首先声明一个调查类 Vote 的对象,通过这个对象来调用类的提取列表方法 getVoteList()。 通过这个页面连接到添加、编辑、选项管理、用户统计及删除操作页面。 界面如图 所示。 图 调查列表 代码如下: ?php require_once()。 require_once(INCLUDE_PATH . 39。 39。 )。 $vote = new Vote()。 //声明一个对象 $vote $list = $votegetVoteList()。 $time = time()。 ? form name=form1 action= method=post table width=98% border=0 align=center cellspacing=0 class=l_table_1 id=table_1 tr class=title td width=5%序号 /td td width=24%调查标题 /td td width=14%开始时间 /td td width=12%结束时间 /td td width=12%选项类型 /td td width=6%是否过期 /td td width=6%是否启用 /td td width=21%操作 /td /tr ?php if($list) //如果有记录则循环显示 { foreach($list as $key = $value) { ? tr class=l_field td align=left?php echo ($key + 1)?/td td align=left?php echo $value[39。 F_VOTE_TITLE39。 ]?/td td align=left?php echo date(39。 Ymd39。 ,$value[39。 F_VOTE_START39。 ])?/td td align=left?php echo date(39。 Ymd39。 ,$value[39。 F_VOTE_END39。 ])?/td td align=left?php echo $vote_type[$value[39。 F_VOTE_ITEM_TYPE39。 ]]?/td td align=left?php if($value[39。 F_VOTE_END39。 ] $time) echo 未过期。 else echo 已过期。 ?/td td align=left?php echo $vote_display[$value[39。 F_VOTE_IS_DISPLAY39。 ]]?/td td align=lefta href=?id=?php echo $value[39。 F_ID39。 ]?[ 编辑 ]/a a href= ?id=?php echo $value[39。 F_ID39。 ]?[选项管理 ]/a a href=?id=?php echo $value[39。 F_ID39。 ]?[用户统计信息 ]/a a href=?id=?php echo $value[39。 F_ID39。 ]?[删除 ]/a /td . . /tr ?php } } ? tr td colspan=13 align=centerinput type=submit name=Submit。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。