php开发简单新闻发布系统,PHP开发简单新闻发布系统之新闻发布页PHP代码

这篇博客介绍如何通过PHP后端代码实现向MySQL数据库插入新闻数据,包括标题、作者和内容。文章详细讲解了如何设置发布时间和修改时间,并展示了完整的publish.php文件,该文件用于接收POST请求并执行SQL插入操作,最终将新闻信息存储到数据库中。
摘要由CSDN通过智能技术生成

这一节我们通过后台的PHP代码来实现添加数据到数据库并展示在新闻列表页

主要思路:

在表单中填写新闻的内容,包括:标题title,  作者author,  内容content ,另外的字段id, 发布时间created_at, 修改时间updated_at的内容有服务器完成,当然也要自己写程序,只是不由自己手动而已。提交表单后,用 MySQL 语句将它们添加到数据库中。

实例中会使用发布时间created_at, 修改时间updated_at,我们将它们直接设置当前的发布时间和修改时间。

就要使用 date()这个函数:把时间戳格式化为更易读的日期和时间。

可以获取简单的日期和时间

date("Y-m-d")表示获取年-月-日

date(" H:i:s")表示获取小时-分钟--秒数

因为我们都使用东半球时区,在这里我们使用date_default_timezone_set('Asia/Shanghai'),设置时区为上海所在时区。

4938abfa21268fa00404f31b142985c3.png

当然首先我们还是需要连接数据库,这里创建了一个名为test的数据库。<?php

$link = mysqli_connect('localhost','username','password','test');

if (!$link) {

die("连接失败:".mysqli_connect_error());

}

?>

我们使用POST方式来获取数据<?php

$title = isset($_POST['title'])?$_POST['title']:"";     //标题

$author = isset($_POST['author'])?$_POST['author']:"";    //作者

$content = isset($_POST['content'])?$_POST['content']:"";  //新闻内容

$created_at = date("Y-m-d H:i:s");    //发布时间

$updated_at = date("Y-m-d H:i:s");    //修改时间

?>

使用 insert into():向数据库表(创建一个名为new的表)中添加数据 ,<?php

$sql="insert into new(title,author,content,created_at,updated_at) values('$title','$author','$content','$created_at','$updated_at')";

$rel = mysqli_query($link,$sql);      //执行sql语句

?>

展示完整代码publish.php文件 :<?php

header("content-type:text/html;charset=utf8");

date_default_timezone_set('Asia/Shanghai');

//连接数据库

$link = mysqli_connect('localhost','username','password','test');

if (!$link) {

die("连接失败:".mysqli_connect_error());

}

$title = isset($_POST['title'])?$_POST['title']:"";

$author = isset($_POST['author'])?$_POST['author']:"";

$content = isset($_POST['content'])?$_POST['content']:"";

$created_at = date("Y-m-d H:i:s");

$updated_at = date("Y-m-d H:i:s");

//执行插入语句

$sql="insert into new(title,author,content,created_at,updated_at) values('$title','$author','$content','$created_at','$updated_at')";

$rel = mysqli_query($link,$sql);

//执行sql语句

if($rel){

echo "";  //发布成功跳转到新闻列表页list.php

}else{

echo "";

}

?>

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PHP实例之新闻发布系统 Create TABLE `news` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `p_time` DATETIME NOT NULL , `title` VARCHAR( 80 ) NOT NULL , `detail` TEXT NOT NULL ) TYPE = innodb; create table news(id int not null auto_increment primary key, p_time datetime not null, title varchar(80)not null, detail text not null )type=innodb; 数据库连接:conn.php <? $conn = @mysql_connect('localhost','root','')or die(mysql_error()."不能连接到数据库!"); //连接数据库; $db = mysql_select_db('news',$conn); $page_size = 8; //每页最多显示新闻条数; ?> 添加新闻页面:new.php <? $title="新闻发布系统"; include("inc/header.inc");//头文件 ?> <style type="text/css"> <!-- .STYLE1 {font-size: 12px} .title { font-size: 12px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; font-family: "宋体"; color: #993300; line-height: normal; height: 16px; } .field { font-family: "宋体"; font-size: 12px; color: #993333; } .STYLE2 { font-size: 16px; font-weight: bold; } --> </style> <p align="center" class="STYLE2">PHP+Mysql新闻发布</p> <form action="post.php" method="post" name="frm" id="frm"> <table width="500" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#0066FF"> <tr> <td height="1" bgcolor="#FFFFFF"><span class="STYLE1">标题:</span></td> </tr> <tr> <td height="1" bgcolor="#FFFFFF"><input name="title" type="text" class="title" id="title" size="60" maxlength="80"></td> </tr> <tr> <td height="1" bgcolor="#FFFFFF"><span class="STYLE1">内容: </span></td> </tr> <tr> <td height="1" bgcolor="#FFFFFF"><textarea name="textfield" cols="58" rows="6" class="field"></textarea></td> </tr> <tr> <td bgcolor="#FFFFFF"><input name="submit" type="submit" value="发布"></td> </tr> </table> </form> <? include("inc/navbar.inc");//底部 ?> 新闻处理页面:post.php <? include"conn.php"; $title=htmlspecialchars($_POST['title']); $textfield=htmlspecialchars($_POST['textfield']); $pub_time=date('Y')."-".date('m')."-".date('d')." ".date('H').":".date('i').":".date('s'); $query="insert into news(title,detail,p_time)values ('$title','$textfield','$pub_time')"; $result=mysql_query($query); if($result) { echo "发布成功!<br>"; echo "<a href='list.php'>新闻列表</a> <a href='new.php'>继续发布</a>"; } else { echo mysql_error()."<br>"; echo "发布失败!请<a >返回</a>"; } ?> 新闻列表:list.php <? include "conn.php"; $query = "Select COUNT(*) FROM news"; $result = mysql_query($query); $num = mysql_num_rows($result); $page_count = ceil($num/$page_size); //$offset = ($page_count-1)*$page_size; if(empty($_GET['page'])) { $page = 1; }else { $page = $_GET['page']; if($page<=0) { $page = 1; }else { $page >= $page_count; $page = $page_count-1; } } $query ="Select * FROM `news` orDER BY `id` DESC LIMIT ".($page-1)*$page_count.","."$page_size"; $result = mysql_query($query); ?> <table width="571" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#0066FF"> <tr> <td width="5" bgcolor="#FFFFFF"><div align="center"></div></td> <td width="343" bgcolor="#FFFFFF"><div align="center">标题</div></td> <td width="189" bgcolor="#FFFFFF"><div align="center">时间</div></td> </tr> <?php while($l_result = mysql_fetch_array($result)) { ?> <tr> <td bgcolor="#FFFFFF"><div align="center"><?php echo $l_result['id'];?></div> </td> <td bgcolor="#FFFFFF"><div align="center"><a href="<?php echo "><?php echo $l_result['title'];?></a></div></td> <td bgcolor="#FFFFFF"><div align="center"><a href="<?php echo "><?php echo $l_result['p_time'];?></a></div></td> </tr> <?php } ?> </table><br> <center><a href="new.php">发布信息</a><br></center> <?php //页码显示 for ($i=1;$i<=($page_count-1);$i++){ echo "<a page=".$i.">".$i."</a> "; } //页码显示 ?> 新闻显示页面:view.php <? include "conn.php"; $query = "Select * FROM news where id=".$_GET['id']; $result = mysql_query($query); $v_result = @mysql_fetch_array($result); ?> <table width="60%" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#0066FF"> <tr> <td bgcolor="#FFFFFF">标题:</td> </tr> <tr> <td bgcolor="#FFFFFF"><?php echo $v_result['title'];?></td> </tr> <tr> <td bgcolor="#FFFFFF">内容:</td> </tr> <tr> <td bgcolor="#FFFFFF"><?php echo $v_result['detail'];?></td> </tr> <tr> <td bgcolor="#FFFFFF"><a href="list.php">返回</a></td> </tr> </table>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值