PHP開發(fā)簡單新聞發(fā)布系統(tǒng)之新聞發(fā)布頁P(yáng)HP代碼
這一節(jié)我們通過后臺的PHP代碼來實(shí)現(xiàn)添加數(shù)據(jù)到數(shù)據(jù)庫并展示在新聞列表頁
主要思路:
在表單中填寫新聞的內(nèi)容,包括:標(biāo)題title, 作者author, 內(nèi)容content ,另外的字段id, 發(fā)布時間created_at, 修改時間updated_at的內(nèi)容有服務(wù)器完成,當(dāng)然也要自己寫程序,只是不由自己手動而已。提交表單后,用 MySQL 語句將它們添加到數(shù)據(jù)庫中。
實(shí)例中會使用發(fā)布時間created_at, 修改時間updated_at,我們將它們直接設(shè)置當(dāng)前的發(fā)布時間和修改時間。
就要使用 date()這個函數(shù):把時間戳格式化為更易讀的日期和時間。
可以獲取簡單的日期和時間
date("Y-m-d")表示獲取年-月-日
date(" H:i:s")表示獲取小時-分鐘--秒數(shù)
因?yàn)槲覀兌际褂脰|半球時區(qū),在這里我們使用date_default_timezone_set('Asia/Shanghai'),設(shè)置時區(qū)為上海所在時區(qū)。
當(dāng)然首先我們還是需要連接數(shù)據(jù)庫,這里創(chuàng)建了一個名為test的數(shù)據(jù)庫。
<?php $link = mysqli_connect('localhost','username','password','test'); if (!$link) { die("連接失敗:".mysqli_connect_error()); } ?>
我們使用POST方式來獲取數(shù)據(jù)
<?php $title = isset($_POST['title'])?$_POST['title']:""; //標(biāo)題 $author = isset($_POST['author'])?$_POST['author']:""; //作者 $content = isset($_POST['content'])?$_POST['content']:""; //新聞內(nèi)容 $created_at = date("Y-m-d H:i:s"); //發(fā)布時間 $updated_at = date("Y-m-d H:i:s"); //修改時間 ?>
使用 insert into():向數(shù)據(jù)庫表(創(chuàng)建一個名為new的表)中添加數(shù)據(jù) ,
<?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); //執(zhí)行sql語句 ?>
展示完整代碼publish.php文件 :
<?php header("content-type:text/html;charset=utf8"); date_default_timezone_set('Asia/Shanghai'); //連接數(shù)據(jù)庫 $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"); //執(zhí)行插入語句 $sql="insert into new(title,author,content,created_at,updated_at) values('$title','$author','$content','$created_at','$updated_at')"; $rel = mysqli_query($link,$sql); //執(zhí)行sql語句 if($rel){ echo "<script>alert('新聞發(fā)布成功');window.location.href='list.php'</script>"; //發(fā)布成功跳轉(zhuǎn)到新聞列表頁list.php }else{ echo "<script>alert('新聞發(fā)布失敗');window.location.href='publish.php'</script>"; } ?>