線上書籍

Home

[1032]PHP入門

<?php // 啟用 session session_start(); //設定新聞發布密碼 $passwd='12345'; //設定樣板中 [var.變數] 對應到的幾個變數其預設值 $news_title=isset($_SESSION['news_title'])?$_SESSION['news_title']:""; $news_content=isset($_SESSION['news_content'])?$_SESSION['news_content']:""; $author=isset($_SESSION['author'])?$_SESSION['author']:""; $ip=$_SERVER['REMOTE_ADDR']; //整理傳來的自訂動作變數 $op $op=isset($_REQUEST['op'])?$_REQUEST['op']:""; //若 $op 值是 passwd_error,則顯示密碼錯誤訊息 if($op=="passwd_error"){ $passwd_error=' <div class="alert alert-danger"> 密碼錯誤!!請檢查密碼是否正確! </div> '; }elseif($op=="db_error"){ $passwd_error=' <div class="alert alert-danger"> 資料庫連線錯誤!!請檢查資料庫帳號、密碼是否正確! </div> '; }elseif($op=="save"){ //過濾外面傳來的變數 $op=isset($_POST['op'])?$_POST['op']:""; $password=isset($_POST['password'])?$_POST['password']:""; $news_title=isset($_POST['news_title'])?$_POST['news_title']:""; $news_content=isset($_POST['news_content'])?$_POST['news_content']:""; $author=isset($_POST['author'])?$_POST['author']:""; //接收使用者輸入密碼,失敗轉回發布頁 if($op=="save" && (empty($password) or $password!=$passwd)){ // 產生 cookie // setcookie('news_title',$news_title); // setcookie('news_content',$news_content); // 產生 session,以記住剛剛使用者輸入的資料,避免需要重打 $_SESSION['news_title']=$news_title; $_SESSION['news_content']=$news_content; //轉回編輯頁面,並用 get 方式,傳遞 $op 以便顯示密碼有誤的訊息 header("location:post.php?op=passwd_error"); }else{ // nl2br()將換行符號轉換為<br>標籤 //$news_content=nl2br($news_content); // 發布正確,剛剛輸入的內容無需在記住,因此清空之。 $_SESSION['news_title']=$_SESSION['news_content']=''; } //連線到資料庫 $link=mysql_connect("localhost","帳號","密碼"); //假如連上 if($link){ //設定編碼為 utf-8 mysql_query("SET NAMES 'utf8'"); //選擇資料庫 mysql_select_db("tad1032"); //存到資料庫 $sql="insert into eznews (news_title, news_content, ip, author, post_time) values('$news_title', '$news_content', '$ip', '$author', now())"; mysql_query($sql); //轉向 header("location:index.php"); }else{ $_SESSION['news_title']=$news_title; $_SESSION['news_content']=$news_content; //轉回編輯頁面,並用 get 方式,傳遞 $op 以便顯示密碼有誤的訊息 header("location:post.php?op=db_error"); } }else{ $passwd_error=''; } //載入小強樣板引擎 include_once('tbs_class.php'); //實體化一個樣板引擎 $TBS =new clsTinyButStrong ; //套用 post_tpl.html 樣板 $TBS->LoadTemplate('post_tpl.html',False) ; //顯示頁面 $TBS->Show() ; ?>