本文实例讲述了PHP实现简单的新闻发布系统。分享给大家供大家参考。具体如下:
本人小白,一直在公司用模板和框架写PHP,发现有时候连基本的sql语句都忘记了,所以有空想把PHP基础复习下,巩固下。分页和搜索,以及排序,还没写,后期继续更新...(代码修改:添加搜索和分页功能)
articlePublish.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf8"> <title>Insert title here</title> </head> <body bgcolor="#ccc"> <form name="article" method="post" action="articlePublishDo.php" style="margin:5px 500px;"> <h1 id="发布新闻系统">发布新闻系统</h1> 标题:<input type="text" name="title"/><br/> 内容:<textarea cols=30 rows=5 name="content"></textarea><br/><br/> <input type="submit" value="发布新闻"/> </form> </body> </html>
articlePublishDo.php:
<?php header("content-type:text/html;charset=utf8"); date_default_timezone_set('Asia/Shanghai'); $title=trim($_POST['title']); $content=trim($_POST['content']); $time=date("y-m-d H:i:s"); require_once 'init.php'; $sql="insert into article(title,content,create_time) values('$title','$content','$time')"; //echo $sql; $re=mysql_query($sql);//执行sql语句 if($re){ echo "发布成功"; echo '<a href="articleList.php">返回文章列表</a>'; }else{ echo "发布失败"; echo '<a href="articleList.php">返回文章列表</a>'; } mysql_close();//关闭数据库
articleList.php:
<!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=utf8"> <title>Insert title here</title> </head> <body> <!-- 搜索框 --> <form method="get" action="articleList.php" style="margin:10px 400px;"> <input type="text" name="search"/> <input type="submit" value="搜索"/> </form> <br/> <table cellspacing="0" cellpadding="0" align="center" bgcolor="#ccc" width=500 > <a href="articlePublish.html" style="padding:20px 30px">返回发布文章</a> <tr> <th>编号</th> <th>文章标题</th> <th>文章内容</th> <th>编辑文章</th> </tr> <?php require_once 'init.php'; /** * 搜索 */ $keyword=$_GET['search']; /*分页*/ $sql="select count(*) from article where title like '%$keyword%' or content like '%$keyword%'"; $res=mysql_query($sql); //$count= (int)mysql_num_rows($result); $arr=mysql_fetch_assoc($res); while(list($key,$val)=each($arr)){ $count = (int)$val; } //echo $count; $pageSize=4; $page=floor($count/$pageSize)+1;//总页数$page echo $page; //echo $page; if(isset($_GET['page'])) { //$currentPage = $_GET['page']; if($_GET['page'] <=1){ $currentPage = 1; }elseif ($_GET['page'] >= $page){ $currentPage = $page-1; }else{ $currentPage = $_GET['page']; } }else { $currentPage=1; } $start = ($currentPage-1)*$pageSize; $sql="select id,title,content from article where title like '%$keyword%' or content like '%$keyword%' limit $start,$pageSize"; //echo $sql; $re=mysql_query($sql);//执行sql语句 while($arr=mysql_fetch_assoc($re)){ ?> <tr> <td align="center" style="border:1px solid #000"><?php echo $arr['id'];?></td> <input type="hidden" name="id" value="<?php echo $arr['id'];?>"/> <td align="center" style="border:1px solid #000"><?php echo $arr['title'];?></td> <td align="center" style="border:1px solid #000"><?php echo $arr['content'];?></td> <td align="center" style="border:1px solid #000"> <a href="articleEdit.php?id=<?php echo $arr['id']?>"><font color="red">修改</font></a> <a href="articleDelete.php?id=<?php echo $arr['id']?>"><font color="red">删除</font></a> </td> </tr> <?php } mysql_close();//关闭数据库 ?> </table> <div style="margin:20px 400px;"> 共<?php echo $page?>页 |查到<?php echo $count;?>条记录 当前第<?php echo $_GET['page']?>页| <a href="articleList.php?page=1&search=<?php echo $keyword?>">首页</a> <a href="articleList.php?page=<?php echo ($currentPage-1)?>&search=<?php echo $keyword?>">|上一页</a> <a href="articleList.php?page=<?php echo ($currentPage+1)?>&search=<?php echo $keyword?>">|下一页</a> <a href="articleList.php?page=<?php echo $page?>&search=<?php echo $keyword?>">|末页</a> </div> </body> </html>
articleEdit.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf8"> <title>Insert title here</title> </head> <body bgcolor="#ccc"> <?php $id=(int)$_GET['id']; require_once 'init.php'; $sql="select id,title,content from article where id = '$id'"; //echo $sql; $re=mysql_query($sql);//执行sql语句 $arr=mysql_fetch_assoc($re); //var_dump($arr); mysql_close();//关闭数据库 ?> <form name="article" method="post" action="articleUpdate.php" style="margin:5px 500px;"> <h1 id="文章发布系统">文章发布系统</h1> <input type="hidden" name="id" value="<?php echo $arr['id']?>"/><br/> 标题:<input type="text" name="title" value="<?php echo $arr['title']?>"/><br/> 内容:<textarea cols=30 rows=5 name="content"><?php echo $arr['content']?></textarea><br/><br/> <input type="submit" value="修改文章"/> <a href="articleList.php">返回文章列表</a> <a href="articlePublish.html">返回发布文章</a> </form> </body> </html>
articleUpdate.php:
<?php header("content-type:text/html;charset=utf8"); $arr=$_POST; $id=(int)$arr['id']; require_once 'init.php'; $sql="update article set title = '$arr[title]',content = '$arr[content]' where id = '$id'"; //echo $sql; $re=mysql_query($sql);//执行sql语句 //echo $re; if($re){ echo "修改成功"; echo "<a href='articleList.php'>返回文章列表</a>"; }else{ echo "修改失败"; echo "<a href='articleList.php'>返回文章列表</a>"; } mysql_close();//关闭数据库
articleDelete.php:
<?php header("content-type:text/html;charset=utf8"); require_once 'init.php'; $id=(int)$_GET['id']; $sql="delete from article where id = '$id'"; //echo $sql; $re=mysql_query($sql); if($re){ echo "删除成功"; echo "<a href='articleList.php'>返回文章列表</a>"; }else{ echo "删除失败"; echo "<a href='articleList.php'>返回文章列表</a>"; }
init.php:
<?php //连接数据库 //五步走 //往数据库添加文章 $conn=mysql_connect("localhost","root","");//链接数据库 //echo $conn; $re=mysql_select_db("article");//选择数据库 mysql_query("set names utf8");//设置交互字符集
基础知识总结:
文章发布系统
1.articlePublish.html 发布文章页面 提交到articlePublishDo.php页面,执行写入数据库
2.articleList.php 文章列表页面
3.点击编辑,修改文章 提交到 aiticleEdit.php 表单页面(回显)
4.点击修改文章按钮 提交到 articleUpdate.php
希望本文所述对大家的php程序设计有所帮助。

PHP用于构建动态网站,其核心功能包括:1.生成动态内容,通过与数据库对接实时生成网页;2.处理用户交互和表单提交,验证输入并响应操作;3.管理会话和用户认证,提供个性化体验;4.优化性能和遵循最佳实践,提升网站效率和安全性。

PHP在数据库操作和服务器端逻辑处理中使用MySQLi和PDO扩展进行数据库交互,并通过会话管理等功能处理服务器端逻辑。1)使用MySQLi或PDO连接数据库,执行SQL查询。2)通过会话管理等功能处理HTTP请求和用户状态。3)使用事务确保数据库操作的原子性。4)防止SQL注入,使用异常处理和关闭连接来调试。5)通过索引和缓存优化性能,编写可读性高的代码并进行错误处理。

在PHP中使用预处理语句和PDO可以有效防范SQL注入攻击。1)使用PDO连接数据库并设置错误模式。2)通过prepare方法创建预处理语句,使用占位符和execute方法传递数据。3)处理查询结果并确保代码的安全性和性能。

PHP和Python各有优劣,选择取决于项目需求和个人偏好。1.PHP适合快速开发和维护大型Web应用。2.Python在数据科学和机器学习领域占据主导地位。

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP可以轻松创建互动网页内容。1)通过嵌入HTML动态生成内容,根据用户输入或数据库数据实时展示。2)处理表单提交并生成动态输出,确保使用htmlspecialchars防XSS。3)结合MySQL创建用户注册系统,使用password_hash和预处理语句增强安全性。掌握这些技巧将提升Web开发效率。

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP仍然具有活力,其在现代编程领域中依然占据重要地位。1)PHP的简单易学和强大社区支持使其在Web开发中广泛应用;2)其灵活性和稳定性使其在处理Web表单、数据库操作和文件处理等方面表现出色;3)PHP不断进化和优化,适用于初学者和经验丰富的开发者。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Dreamweaver CS6
视觉化网页开发工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。