首页 > 开发 > PHP > 正文

php编写简单的文章发布程序

2024-05-04 23:36:24
字体:
来源:转载
供稿:网友

本文给大家分享的是使用php编写简单的文章发布程序,适合php菜鸟学习参考,希望对大家学习php能够有所帮助。

--

表的结构 `yi_article`

 

 
  1. CREATE TABLE IF NOT EXISTS `yi_article` ( 
  2.  
  3. `id` int(11) unsigned NOT NULL auto_increment, 
  4.  
  5. `title` varchar(256) NOT NULL
  6.  
  7. `content` mediumtext NOT NULL
  8.  
  9. `add_man` varchar(20) NOT NULL
  10.  
  11. `add_time` datetime NOT NULL
  12.  
  13. `views` int(11) NOT NULL
  14.  
  15. `tag` tinyint(4) NOT NULL
  16.  
  17. PRIMARY KEY (`id`) 
  18.  
  19. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=21 ; 

article.php

 

 
  1. <?php 
  2. class Article extends CI_Controller{ 
  3. public $tips
  4. function __construct(){ 
  5. parent::__construct(); 
  6. //加载我自己的类库 
  7. $this->load->library('myclass'); 
  8. $this->load->database(); 
  9. $this->load->helper('url'); 
  10. $this->tips=array
  11. 'required'=>' [%s] 是必须填写的!'
  12. 'is_unique'=>'此 [%s] 已经存在,请输入其它名称!'
  13. 'min_lenght'=>' [%s] 最小长度为 [%s]'
  14. 'max_length'=>'[%s] 最大长度为 [%s]' 
  15. ); 
  16. function index(){ 
  17. echo "这里是文章的首页"
  18. echo "<br />"
  19. //加载url辅助函数 
  20. $this->load->helper('url'); 
  21. $addr=site_url('article/article_list'); 
  22. echo "<a href='$addr'>查看文章</a>"
  23. $addr=site_url('article/article_page'); 
  24. echo "<a href='$addr'>查看分页</a>"
  25. function article_list(){ 
  26. echo "这里是文章列表"
  27. //加载数据库模型 
  28. //$this->load->model('article_model'); 
  29. //$this->article_model->index(); 
  30. //读取所有的文章 
  31. $this->load->database(); 
  32. echo "<br />"
  33. $query=$this->db->where("id >",5)->select('id,title')->from('article')->order_by('id','desc')->limit(4)->get(); 
  34. $info=$query->result_array();//当然你可以用result() 
  35. $this->myclass->p($info); 
  36. echo "第一条记录的标题:".$info[0]['title']; 
  37. echo "<br />"
  38. echo "第二条记录的标题:".$info[1]['id']; 
  39. echo "<br />"
  40. echo "表article中共有这么些记录:".$this->db->count_all('article'); 
  41. echo "<br />"
  42. echo "本次共查询出这么些条记录:".$query->num_rows(); 
  43. function article_page($page=1){ 
  44. /////////////////////////////////// 
  45. $config=array(); 
  46. //第一步查询出总记录数 
  47. $this->load->database(); 
  48. $config['total_rows']=$this->db->select('*')->from('article')->count_all_results(); 
  49. //每页记录数 
  50. $config['per_page']=5; 
  51. //基础url 
  52. $this->load->helper('url'); 
  53. $config['base_url']=site_url('article/article_page'); 
  54. //显示的链接数 
  55. $config['num_links']=100; 
  56. //在地址栏显示当前页码 
  57. $config['use_page_numbers']=true; 
  58. //定义首页 
  59. $config['first_link']='首页'
  60. //定义末页 
  61. $config['last_link']='尾页'
  62. //上一页 
  63. $config['prev_link']='上一页'
  64. //下一页 
  65. $config['next_link']='下一页'
  66. //把分页包起来 
  67. $config['full_tag_open']='<p>'
  68. $config['full_tag_close']='</p>'
  69. //第二步加载类库 
  70. $this->load->library('pagination'); 
  71. $this->pagination->initialize($config); 
  72. echo $this->pagination->create_links(); 
  73. ///////////////////////////////////// 
  74. $page=$page?intval($page):1; 
  75. $start=($page-1)*$config['per_page']; 
  76. $query=$this->db->select('*')->from('article')->limit($config['per_page'],$start); 
  77. $info=$query->get()->result_array(); 
  78. $this->myclass->p($info); 
  79. echo $this->pagination->create_links(); 
  80. //echo base_url('abc/def'); 
  81. protected function _page($total_rows,$per_page,$base_url){ 
  82. /////////////////////////////////// 
  83. $config=array(); 
  84. //第一步查询出总记录数 
  85. //$this->load->database();//// 
  86. $config['total_rows']=$total_rows
  87. //每页记录数 
  88. $config['per_page']=$per_page
  89. //基础url 
  90. $this->load->helper('url');//// 
  91. $config['base_url']=site_url($base_url); 
  92. //显示的链接数 
  93. $config['num_links']=100; 
  94. //在地址栏显示当前页码 
  95. $config['use_page_numbers']=true; 
  96. //定义首页 
  97. $config['first_link']='首页'
  98. //定义末页 
  99. $config['last_link']='尾页'
  100. //上一页 
  101. $config['prev_link']='上一页'
  102. //下一页 
  103. $config['next_link']='下一页'
  104. //把分页包起来 
  105. $config['full_tag_open']='<p>'
  106. $config['full_tag_close']='</p>'
  107. //第二步加载类库 
  108. $this->load->library('pagination'); 
  109. $this->pagination->initialize($config); 
  110. return $this->pagination->create_links(); 
  111. ///////////////////////////////////// 
  112. function page($page=1){ 
  113. $config['per_page']=5; 
  114. $page=$page?intval($page):1; 
  115. $start=($page-1)*$config['per_page']; 
  116. $query=$this->db->select('*')->from('article')->limit($config['per_page'],$start); 
  117. $info=$query->get()->result_array(); 
  118. return $info
  119. function article_add(){ 
  120. $this->load->library('form_validation'); 
  121. //开始设置验证规则 
  122. //set_message可以传一个一维数组 
  123. $chinesetips=$this->tips; 
  124. $this->form_validation->set_message($chinesetips); 
  125. /* 
  126. $this->form_validation->set_message('required', ' [%s] 是必须填写的!'); 
  127. $this->form_validation->set_message('is_unique', '此 [%s] 已经存在,请输入其它名称!'); 
  128. $this->form_validation->set_message('min_length', ' [%s] 最小长度为 [%s]'); 
  129. $this->form_validation->set_message('max_length', ' [%s] 最大长度为 [%s]'); 
  130. */ 
  131. $this->form_validation->set_rules('title','标题','trim|required|is_unique[article.title]|min_length[6]|max_length[12]');  
  132. $this->form_validation->set_rules('content','内容','required'); 
  133. $this->form_validation->set_rules('tag','状态','required'); 
  134. if($this->form_validation->run()==true){ 
  135. echo "表单验证成功!"
  136. print_r($this->input->post()); 
  137. $data=$this->input->post(); 
  138. unset($data['Submit']); 
  139. $data['add_time']=date('Y-m-d H:i:s'); 
  140. $data['views']='0'
  141. $st=$this->db->insert('article',$data); 
  142. if($st){ 
  143. echo "数据插入成功!"
  144. echo "新的id为:".$this->db->insert_id(); 
  145. //echo get_magic_quotes_gpc(); 
  146. }else
  147. echo "表单验证失败!"
  148. echo "<br />"
  149. echo validation_errors(); 
  150. function article_add_viewer(){ 
  151. $this->load->helper('url'); 
  152. $this->load->view('article_add'); 
  153. function article_links(){ 
  154. $addr=site_url('article/article_mod_viewer/19'); 
  155. echo "<a href='$addr'>修改19</a>"
  156. function article_mod_viewer($id){ 
  157. if($id==""){ 
  158. echo "没有传递参数"
  159. exit
  160. $this->load->helper('url'); 
  161. //从数据库中查出来 
  162. $query=$this->db->select()->from('article')->where('id',$id)->get(); 
  163. $info=$query->row_array(); 
  164. print_r($info); 
  165. $this->load->view('article_mod',$info); 
  166. function abc($val){ 
  167. $this->form_validation->set_message('abc','不行'); 
  168. //p($val); 
  169. return true; 
  170. function article_mod(){ 
  171. $this->load->library('form_validation'); 
  172. //开始设置验证规则 
  173. //set_message可以传一个一维数组 
  174. $chinesetips=$this->tips; 
  175. $this->form_validation->set_message($chinesetips); 
  176. $this->form_validation->set_rules('title','标题','trim|required|min_length[6]|max_length[12]|callback_abc');  
  177. $this->form_validation->set_rules('content','内容','required'); 
  178. $this->form_validation->set_rules('tag','状态','required'); 
  179. if($this->form_validation->run()==true){ 
  180. echo "表单验证成功!"
  181. print_r($this->input->post()); 
  182. $data=$this->input->post(); 
  183. $id=$data['id']; 
  184. unset($data['id']); 
  185. unset($data['Submit']); 
  186. $data['add_time']=date('Y-m-d H:i:s'); 
  187. $data['views']='0'
  188. //p($data); 
  189. $st=$this->db->where('id',$id)->update('article',$data); 
  190. if($st){ 
  191. echo "数据修改成功"
  192. }else
  193. echo "数据修改失败"
  194. }else
  195. echo "表单验证失败!"
  196. echo "<br />"
  197. echo validation_errors(); 
  198. function article_del($id=''){ 
  199. if($id==""){ 
  200. //exit('请传id'); 
  201. $id=array(17,18,19); 
  202. $this->db->where_in('id',$id)->delete('article'); 
  203. $st=$this->db->affected_rows(); 
  204. echo $st
  205. if($st){ 
  206. echo "数据删除成功!"
  207. }else
  208. echo "数据删除失败!"
  209. ?> 

article_add.php

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
  3. <head> 
  4. <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
  5. <meta name="author" content="Www.XiaZaiBa.Com" /> 
  6. <title>无标题 1</title> 
  7. </head> 
  8. <body> 
  9. <form name="form1" action="<?php echo site_url('article/article_add')?>" method="post"
  10. 标题:<input name="title" type="text" value="" /><br /> 
  11. 内容:<input name="content" type="text" value="" /><br /> 
  12. 添加人:<input name="add_man" type="text" value="" /><br /> 
  13. 添加时间:系统自动记录<br /> 
  14. 状态:<input name="tag" type="radio" value="1" />显示 <input name="tag" type="radio" value="0" />隐藏<br /> 
  15. <input type="submit" name="Submit" value="提交" /> 
  16. </form> 
  17. </body> 
  18. </html> 

article_mod.php

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
  3. <head> 
  4. <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
  5. <meta name="author" content="Www.XiaZaiBa.Com" /> 
  6. <title>无标题 1</title> 
  7. </head> 
  8. <body> 
  9. <form name="form1" action="<?php echo site_url('article/article_mod')?>" method="post"
  10. 标题:<input name="title" type="text" value="<?php echo $title;?>" /><br /> 
  11. 内容:<input name="content" type="text" value="<?php echo $content?>" /><br /> 
  12. 添加人:<input name="add_man" type="text" value="<?php echo $add_man;?>" /><br /> 
  13. 添加时间:系统自动记录<br /> 
  14. 状态:<input name="tag" type="radio" value="1" <?php if($tag==1)echo 'checked';?> />显示 <input name="tag" type="radio" value="0" <?php if($tag==0)echo 'checked';?> />隐藏<br /> 
  15. <input type="submit" name="Submit" value="提交" /> 
  16. <input type="hidden" value="<?php echo $id;?>" name="id" /> 
  17. </form> 
  18. </body> 
  19. </html> 

以上所述就是本文的全部内容了希望大家能够喜欢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表