이 기사의 예에서는 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>发布新闻系统</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>文章发布系统</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();//关闭数据库
기사Delete.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 양식 페이지(echo)에 제출하세요.
4. ArticleUpdate.php에 제출하려면 기사 수정 버튼을 클릭하세요
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.