实例(Smarty+FCKeditor新闻系统)


Posted in PHP onJanuary 02, 2007

以下是主文件index.php的内容:

<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
打包下载
实例(Smarty+FCKeditor新闻系统)下载此文件

PHP 相关文章推荐
PHP 高手之路(三)
Oct 09 PHP
php zend 相对路径问题
Jan 12 PHP
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
Aug 07 PHP
PHP操作MongoDB时的整数问题及对策说明
May 02 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
Dec 28 PHP
phpmailer在服务器上不能正常发送邮件的解决办法
Jul 08 PHP
thinkphp模板的包含与渲染实例分析
Nov 26 PHP
PHP+AjaxForm异步带进度条上传文件实例代码
Aug 14 PHP
Docker搭建自己的PHP开发环境
Feb 24 PHP
Laravel中为什么不使用blpop取队列详析
Aug 01 PHP
在php的yii2框架中整合hbase库的方法
Sep 20 PHP
浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法
Oct 12 PHP
PHP+JS无限级可伸缩菜单详解(简单易懂)
Jan 02 #PHP
PHP文件上传实例详解!!!
Jan 02 #PHP
AJAX for PHP简单表数据查询实例
Jan 02 #PHP
[原创]PHP中通过ADODB库实现调用Access数据库之修正版本
Dec 31 #PHP
PHP中通过ADO调用Access数据库的方法测试不通过
Dec 31 #PHP
刚才在简化php的库,结果发现很多东西
Dec 31 #PHP
smarty+adodb+部分自定义类的php开发模式
Dec 31 #PHP
You might like
php中如何判断一个网页请求是ajax请求还是普通请求
2013/08/10 PHP
php正则表达式学习笔记
2015/11/13 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
小议Javascript中的this指针
2010/03/18 Javascript
基于jQuery的倒计时实现代码
2012/05/30 Javascript
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
jQuery对val和atrr(&quot;value&quot;)赋值的区别介绍
2014/09/26 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
2015/01/24 Javascript
jQuery调用Webservice传递json数组的方法
2016/08/06 Javascript
AngularJS国际化详解及示例代码
2016/08/18 Javascript
Angular2学习笔记——详解路由器模型(Router)
2016/12/02 Javascript
详解Jquery Easyui的验证扩展
2017/01/09 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
webpack3.0升级4.0的方法步骤
2020/04/02 Javascript
Vue路由 重定向和别名的区别说明
2020/09/09 Javascript
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
[01:23:24]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第三场 2月7日
2021/03/11 DOTA
使用Python脚本在Linux下实现部分Bash Shell的教程
2015/04/17 Python
Python使用logging结合decorator模式实现优化日志输出的方法
2016/04/16 Python
利用Python获取操作系统信息实例
2016/09/02 Python
Flask框架各种常见装饰器示例
2018/07/17 Python
Python3.7下安装pyqt5的方法步骤(图文)
2020/05/12 Python
使用Pycharm在运行过程中,查看每个变量的操作(show variables)
2020/06/08 Python
Python Django中间件使用原理及流程分析
2020/06/13 Python
英国现代绅士品牌:Hackett
2017/12/17 全球购物
Internet体系结构
2014/12/21 面试题
与UNIX有关的几个名词
2015/09/17 面试题
赞美老师的演讲稿
2014/05/22 职场文书
环境卫生倡议书
2014/08/29 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
2014年小学安全工作总结
2014/12/04 职场文书
布达拉宫的导游词
2015/02/02 职场文书
导游词之南京栖霞山
2019/10/18 职场文书
html5调用摄像头截图功能
2022/01/18 Javascript
Go语言编译原理之源码调试
2022/08/05 Golang