第7章习题答案Word文档格式.docx
《第7章习题答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《第7章习题答案Word文档格式.docx(21页珍藏版)》请在冰点文库上搜索。
![第7章习题答案Word文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/2/2910806b-6924-48b3-8377-dd82b1b19f84/2910806b-6924-48b3-8377-dd82b1b19f841.gif)
$sql="
insertinto`tbl_newsclass`(`classname`,`classdesc`)values('
$classname'
'
$classdesc'
)"
$rs=execUpdate($sql,$link);
return$rs;
}
//编辑新闻分类
functionupdateNewsClass($classid,$classname,$classdesc){
update`tbl_newsclass`set`classname`='
`classdesc`='
where`classid`=$classid"
$rs=execUpdate($sql,$link);
//删除新闻分类
functiondeleteNewsClass($classid){
$sql="
deletefrom`tbl_newsclass`where`classid`=$classid"
//根据编号查找新闻分类
functionfindNewsClassById($classid){
select*from`tbl_newsclass`where`classid`=$classid"
$rs=execQuery($sql,$link);
if(count($rs)>
0){return$rs[0];
//查找新闻分类信息
functionfindNewsClass(){
select*from`tbl_newsclass`"
新闻表的数据访问层:
/**新闻信息操作文件**/
//添加新闻
functionaddNews($title,$content,$uid,$classid){
$title=mysql_dataCheck($title);
$content=mysql_dataCheck($content);
$format="
%Y-%m-%d%H:
%M:
%S"
//设置时间格式
$publishtime=strftime($format);
//获取系统时间
insertinto`tbl_news`(`title`,`content`,`uid`,`classid`,`publishtime`)values('
$title'
$content'
$uid,$classid,'
$publishtime'
//编辑新闻
functionupdateNews($newsid,$title,$content,$uid,$classid){
update`tbl_news`set`title`='
`content`='
`uid`=$uid,`classid`=$classidwhere`newsid`=$newsid"
//置顶新闻,根据新闻编号置顶新闻
functionupdateTopNews($newsid){
update`tbl_news`set`istop`=1where`newsid`=$newsid"
//取消新闻置顶,根据新闻编号取消新闻置顶
functioncancelTopNews($newsid){
update`tbl_news`set`istop`=0where`newsid`=$newsid"
//置热点新闻,根据新闻编号置热点新闻
functionupdateHotNews($newsid){
update`tbl_news`set`ishot`=1where`newsid`=$newsid"
//取消热点新闻,根据新闻编号取消热点新闻
functioncancelHotNews($newsid){
update`tbl_news`set`ishot`=0where`newsid`=$newsid"
//根据新闻编号修改点赞计数
functionupdateLikeCount($newsid){
update`tbl_news`set`likecount`=`likecount`+1where`newsid`=$newsid"
//根据新闻编号修改阅读计数
functionupdateViewCount($newsid){
update`tbl_news`set`viewcount`=`viewcount`+1where`newsid`=$newsid"
//删除新闻
functiondeleteNews($newsid){
deletefrom`tbl_news`where`newsid`=$newsid"
//按照发布时间倒序查询所有新闻信息
functionfindNews(){
select*from`tbl_news`orderby`publishtime`desc"
//根据新闻类别显示相应类别新闻
functionfindNewsByClassid($classid){
select*from`tbl_news`where`classid`=$classidorderby`publishtime`desc"
//根据编号查找新闻
functionfindNewsById($newsid){
select*from`tbl_news`where`newsid`=$newsid"
//根据用户编号查找新闻
functionfindNewsByUid($uid){
select*from`tbl_news`where`uid`=$uid"
//按照指定字段,指定关键词模糊查询新闻信息,若$search_field没有设置,则默认对新闻标题和内容字段都进行查找
functionfindNewsByName($keyword,$search_field="
all"
){
if($search_field=="
){
select*from`tbl_news`where`title`like'
%$keyword%'
or`content`like'
orderby`publishtime`desc"
}else{
select*from`tbl_news`where`$search_field`like'
}
//显示热点新闻若缺省参数,则显示所有的热点新闻,否则显示指定条数的热点新闻
functionfindHotNews($countlimit=0){
select*from`tbl_news`where`ishot`=1orderbypublishtimedesc"
if($countlimit!
=0){
$sql=$sql."
limit$countlimit"
}
//echo$sql;
//显示置顶新闻若缺省参数,则显示所有的推荐新闻,否则显示指定条数的置顶新闻
functionfindTopNews($countlimit=0){
select*from`tbl_news`where`istop`=1orderbypublishtimedesc"
///////////////////////////////////////
//加入分页后的新闻查询函数
//////////////////////////////////////
/**
获取全部新闻分页后的最大页码
*@paramint$pagesize每页显示最大记录数默认为10条记录
*/
functionmaxpage_findNews($pagesize=10){
selectcount(*)asnumfrom`tbl_news`orderby`publishtime`desc"
$count=$rs[0];
//取出查询结果中的num列的值
$count=$count['
num'
];
//取得最大页码值
$max_page=ceil($count/$pagesize);
return$max_page;
分页查询所有新闻信息,按照发布时间倒序
*@paramint$page当前page值
functionfindNews_page($page,$pagesize=10){
$max_page=maxpage_findNews($pagesize);
//拼接查询语句并执行,获取查询数据
$lim=($page-1)*$pagesize;
select*from`tbl_news`orderby`publishtime`desclimit$lim,$pagesize"
获取分类新闻查询分页后的最大页码
*@paramint$classid新闻类别编号
functionmaxpage_findNewsByClassid($classid,$pagesize=10){
selectcount(*)asnumfrom`tbl_news`where`classid`=$classidorderby`publishtime`desc"
分页查询选定类别的新闻信息,按照发布时间倒序
functionfindNewsByClassid_page($classid,$page,$pagesize=10){
$max_page=maxpage_findNewsByClassid($pagesize);
select*from`tbl_news`where`classid`=$classidorderby`publishtime`desclimit$lim,$pagesize"
获取模糊新闻查询分页后的最大页码
*@paramstring$keyword查询内容
*@paramstring$search_field查询字段
functionmaxpage_findNewsByName($keyword,$search_field="
$pagesize=10){
if($search_field=="
selectcount(*)asnumfrom`tbl_news`where`title`like'
selectcount(*)asnumfrom`tbl_news`where`$search_field`like'
}$rs=execQuery($sql,$link);
分页查询选定模糊查询的新闻信息,按照发布时间倒序
*@paramstring$search_field查询字号
functionfindNewsByName_page($keyword,$page,$search_field="
$max_page=maxpage_findNewsByName($keyword,$search_field,$pagesize);
orderby`publishtime`desclimit$lim,$pagesize"
orderby`publishtime`desclimit$lim,$pagesize"
获取置顶新闻分页后的最大页码
functionmaxpage_findRecommendNews($pagesize=10){
selectcount(*)asnumfrom`tbl_news`whereistop=1orderby`publishtime`desc"
分页查询置顶新闻信息,按照发布时间倒序
functionfindRecommendNews_page($page,$pagesize=10){
select*from`tbl_news`whereistop=1orderby`publishtime`desclimit$lim,$pagesize"
获取热点新闻分页后的最大页码
functionmaxpage_findHotNews($pagesize=10){
selectcount(*)asnumfrom`tbl_news`whereishot=1orderby`publishtime`desc"