实例(Smarty+FCKeditor新闻系统)
2015-01-24信息快讯网
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <?php require('./global.php'); require('./smarty/libs/Smarty.class.php'); require('./mysql.php'); require('./FCKeditor/fckeditor.php'); $action=$_REQUEST['action']; //定义一个函数用于调用FCK function editor($input_name, $input_value) { global $smarty; $editor = new FCKeditor($input_name) ; $editor->BasePath = "./FCKeditor/";//指定编辑器路径 $editor->ToolbarSet = "Default";//编辑器工具栏有Basic(基本工具),Default(所有工具)选择 $editor->Width = "100%"; $editor->Height = "320"; $editor->Value = $input_value; $editor->Config['AutoDetectLanguage'] = true ; $editor->Config['DefaultLanguage'] = 'en' ;//语言 $FCKeditor = $editor->CreateHtml(); $smarty->assign("editor", $FCKeditor);//指定区域 } switch ($action){ case 'addnewsview': $smarty= new Smarty(); $smarty->template_dir = './template'; $smarty->compile_dir = './smarty/templates_c'; $smarty->assign('page_title','新建新闻'); $smarty->assign('actionvalue','addnews'); editor('content','');//调用编辑器,并定义文本域名为content(与下面addnews中的$_REQUEST['content']对应 $smarty->display('addnews.htm'); break; case 'addnews': $title=$_REQUEST['title']; $content=$_REQUEST['content']; $db=new mysql(); $button=$_REQUEST['Submit']; if(empty($title) || empty($content)){ echo "请填写完成!<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1; URL=./index.php?action=addnewsview\">"; }else{ $sql="insert into news values(id,'admin','$title','$content',NOW())"; $db->query_exec($sql); echo "操作成功!<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1; URL=./index.php\">"; } break; case 'editnewsview': $smarty= new Smarty(); $smarty->template_dir = './template'; $smarty->compile_dir = './smarty/templates_c'; $smarty->assign('page_title','修改新闻'); $smarty->assign('actionvalue','addnews'); $id=$_REQUEST['id']; $query="select * from news where id=$id"; $db=new mysql(); $result = $db->query_exec($query); $rs = $result-> fetch_assoc(); $smarty->assign('title',$rs['title']); //$smarty->assign('content',$rs['content']); $smarty->assign('actionvalue','editnews'); $smarty->assign('id',$rs['id']); editor('content',$rs['content']); $smarty->display('addnews.htm'); break; case 'editnews': $title=$_REQUEST['title']; $content=$_REQUEST['content']; $id=$_REQUEST['id']; $button=$_REQUEST['Submit']; $db=new mysql(); if ($button=='提交'){ $sql="update news set title='$title',content='$content',date=NOW() where id=$id"; $db->query_exec($sql); echo "操作成功!<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1; URL=./index.php\">"; } break; case 'delnews': $db=new mysql(); if ($checkbox!="" or count($checkbox)!=0) { for ($i=0;$i<count($checkbox);$i++){ $db->query_exec("delete from news where id='$checkbox[$i]'"); } } echo "操作成功!<META HTTP-EQUIV=\"Refresh\" CONTENT=\"1; URL=./index.php\">"; break; default: $smarty= new Smarty(); $smarty->template_dir = './template'; $smarty->compile_dir = './smarty/templates_c'; $smarty->assign('page_title','新闻管理'); $smarty->assign('actionvalue','delnews'); $query="select * from news"; $db=new mysql(); $result = $db->query_exec($query); while ($rs = $result-> fetch_assoc()) { $array[]= array("id"=>$rs['id'], "title"=>$rs['title'],"date"=>$rs['date']); $smarty->assign('news',$array); } $smarty->display('index.htm'); } ?> 以下是模板文件index.htm的内容 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>{$page_title}</title> </head> <body> <p class="style1">新闻管理</p> <hr> <table width="771" height="115" border="0"> <tr> <td height="62"><div align="center">系统管理</div></td> <td width="666" rowspan="2"><form name="form1" method="post" action=""> <table width="543" border="0"> <tr> <td width="253">标题</td> <td width="230">日期</td> <td width="46">选择</td> </tr> {section name=news loop=$news} <tr> <td><a href="./index.php?action=editnewsview&id={$news[news].id}">{$news[news].title}</a></td> <td>{$news[news].date}</td> <td><input name="checkbox[]" type="checkbox" id="checkbox[]" value="{$news[news].id}"></td> </tr> {/section} </table> <p> <input type="submit" name="Submit" value="删除"> <input name="action" type="hidden" id="action" value="{$actionvalue}"> </p> </form> </td> </tr> <tr> <td width="95" height="47"><div align="center"><a href="./index.php?action=addnewsview">添加新闻</a></div></td> </tr> </table> <p class="style1"> </p> </body> </html> 以下是添加新闻的模板文件addnews.htm <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link href="./css/a.css" rel="stylesheet" type="text/css"> <title>{$page_title}</title> </head> <body> <p class="style1">新闻管理登陆 </p> <hr> <table width="771" height="501" border="0"> <tr> <td height="62"><div align="center">系统管理</div></td> <td width="666" rowspan="2"><form name="form1" method="post" action="index.php"> <p>标题 <input name="title" type="text" id="title" value="{$title}"> </p> <p>内容:</p> <p>{$editor}</p> <p> <input type="submit" name="Submit" value="提交"> <input type="hidden" name='action' value={$actionvalue}> <input name="id" type="hidden" value="{$id}"> </p> </form> </td> </tr> <tr> <td width="95" height="433"><div align="center">添加新闻</div></td> </tr> </table> </body> </html>
注:数据库已经在附件里面,先新建一个名为new的数据库,再把表导入
本系统用户名:admin 密码:admin
打包下载
下载此文件
php fckeditor 调用的函数
学习discuz php 引入文件的方法DISCUZ_ROOT
php 分页函数multi() discuz
discuz7 phpMysql操作类
php array_map array_multisort 高效处理多维数组排序
php split汉字
DISCUZ 论坛管理员密码忘记的解决方法
PHP SQLite类
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
将数组写入txt文件 var_export
php Http_Template_IT类库进行模板替换
PHP Pear 安装及使用
php 什么是PEAR?(第三篇)
php smarty的预保留变量总结
方便实用的PHP生成静态页面类(非smarty)第1/2页
使用Limit参数优化MySQL查询的方法
smarty的保留变量问题
smarty section简介与用法分析
PHP Smarty生成EXCEL文档的代码
PHP小技巧搜集,每个PHPer都来露一手
PHP+JS无限级可伸缩菜单详解(简单易懂)
smarty+adodb+部分自定义类的php开发模式
adodb与adodb_lite之比较
使用adodb lite解决问题
介绍几个array库的新函数 php
ob_start(),ob_start('ob_gzhandler')使用
php中处理模拟rewrite 效果
eWebEditor v3.8 商业完整版 (PHP)
PHP 5.0 Pear安装方法
[PHP]模板引擎Smarty深入浅出介绍
专为新手写的结合smarty的类第1/3页
ADODB结合SMARTY使用~超级强
smarty静态实验表明,网络上是错的~呵呵
截获网站title标签之家内容的例子
模拟SQLSERVER的两个函数:dateadd(),datediff()
打造计数器DIY三步曲(中)
打造计数器DIY三步曲(下)
打造计数器DIY三步曲(上)