PHP開發(fā)簡(jiǎn)單新聞發(fā)布系統(tǒng)之新聞發(fā)布頁P(yáng)HP代碼
這一節(jié)我們透過後臺(tái)的PHP程式碼來實(shí)現(xiàn)新增資料到資料庫並展示在新聞列表頁
主要想法:
在表單中填寫新聞的內(nèi)容,包括:標(biāo)題title, ?作者author, ?內(nèi)容content ,另外的字段id, 發(fā)佈時(shí)間created_at, 修改時(shí)間updated_at的內(nèi)容有伺服器完成,當(dāng)然也要自己寫程序,只是不由自己手動(dòng)而已。提交表單後,用 MySQL 語句將它們加入資料庫。
實(shí)例中會(huì)使用發(fā)佈時(shí)間created_at, 修改時(shí)間updated_at,我們將它們直接設(shè)定目前的發(fā)佈時(shí)間和修改時(shí)間。
就要使用 date()這個(gè)函數(shù):把時(shí)間戳格式化為更容易讀取的日期和時(shí)間。
可以取得簡(jiǎn)單的日期和時(shí)間
date("Y-m-d")表示取得年-月-日
date(" H:i:s" )表示取得小時(shí)-分鐘--秒數(shù)
因?yàn)槲覀兌际褂脰|半球時(shí)區(qū),在這裡我們使用date_default_timezone_set('Asia/Shanghai'),設(shè)定時(shí)區(qū)為上海所在時(shí)區(qū)。
當(dāng)然首先我們還是需要連接資料庫,這裡建立了一個(gè)名為test的資料庫。
<?php $link = mysqli_connect('localhost','username','password','test'); if (!$link) { die("連接失敗:".mysqli_connect_error()); } ?>
我們使用POST方式來取得資料
<?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ā)布時(shí)間 $updated_at = date("Y-m-d H:i:s"); //修改時(shí)間 ?>
使用?insert into():在資料庫表(建立一個(gè)名為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); //執(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>"; } ?>