1. 程式人生 > 程式設計 >PHP+MySql實現一個簡單的留言板

PHP+MySql實現一個簡單的留言板

跟著書學的,程式碼不是自己寫的,但是都能理解,有時間自己去寫個好看一點的吼吼吼~(不熟練花了一天的時間…

留言板是接觸WEB開發的基礎,寫一個留言板需要知道前端的一些基礎標籤,對資料庫有一個瞭解會基礎SQL語言,PHP基礎知識,前段基礎+資料庫基礎+PHP基礎=>留言板。

前方高能哇(介面真的是吃藕誒…

先建一個數據庫,資料庫裡有兩張表,一個存賬號密碼,一個存留言資訊

//建立資料庫,裡面有兩張表Admin和Message
create database gbook;
//建立Admin表,記錄使用者名稱和密碼
create table admin(
  username varchar(20) not null,userpass varchar(20) not null
);
//建立Message表,記錄留言的id,留言人,留言日期,留言內容以及回覆
create table message(
  id int(4) not null auto_increment primary key,author varchar(20) not null,addtime datetime not null,content varchar(1000) not null,reply varchar(1000) not null
);

首先實現使用者留言的部分,這是第一步,沒有留言index頁面就空了嘛~

<!-- 1.使用者填寫留言部分 send.php -->
<!-- 可以首先編寫send頁面,只有使用者提交了留言才能進行後面的留言顯示,留言管理等等 -->
 
<?php
  $name = $_POST["name"];//從input裡面傳過來的name
  //看使用者是否提交了新留言,如果提交了,則寫入表message
  if( $name != ""){
    $content = $_POST["content"];
    //下面的程式碼用於獲得當前日期和時間
    $addtime = date("Y-m-d h:i:s");//得到日期
    $link = mysqli_connect("127.0.0.1","root","Vmorish");//PHP連線資料庫
    if( $link)
      echo "ok!<br>";
    else {
      echo "bad!<br>";
    }
    mysqli_select_db($link,"gbook");//選擇資料庫
    $insert = "insert into message(author,addtime,content,reply) values('$name','$addtime','$content','')";
    mysqli_query($link,$insert);
    mysqli_close($link);
    echo "<script language=javascript>alert('留言成功!單擊確定檢視留言.');location.href='index.php';</script>";
  }
  mysqli_close($link);
 
 ?>
 
<html>
 
<head>
  <title>歡迎來到陳雨情的留言本吼吼吼</title>
</head>
 
<body>
  <!-- border-collapse:collapse合併表格的邊框 -->
  <table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black>
    <tr>
      <td height=100 bgcolor=#6c6c6c>
        <font style="font-size:30px" color=#ffffff face="黑體">歡迎來到×××的留言本吼吼吼</font>
      </td>
    </tr>
    <tr>
      <td height=25>
        <a href=send.php>[我要寫留言]</a>
        <a href=login.php>[管理留言]</a>
      </td>
    </tr>
    <tr>
      <td height=200>
        <form method="POST" action="send.php">
          <table border="1" width="95%" id="table1" cellspacing="0" cellpadding="0" bordercolor="#808080" style="border-collapse:collapse" height="265">
            <tr>
              <td colspan="2" height="29">
                <p align="center">歡迎填寫你的留言</p>
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p align="right">你的名字</p>
              </td>
              <td width="67%">
                <input type="text" name="name" size="20">
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p>留言內容</p>
              </td>
              <td width="67%">
                <textarea rows="10" name="content" cols="31"></textarea>
              </td>
            </tr>
            <tr>
              <td width="99%" colspan="2">
                <p align="center">
                  <input type="submit" value="提交" name="B1">
                </p>
              </td>
            </tr>
          </table>
        </form>
      </td>
    </tr>
    <tr>
      <td height=80 bgcolor=#6c6c6c align=center>
        <font color="#FFFFFF">
          版權所有:<a href="http://blog.csdn.net/cherish0222" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Vmorish</a><br>
          E-mail:[email protected]
        </font>
      </td>
    </tr>
  </table>
 
</body>
 
</html>

效果:

PHP+MySql實現一個簡單的留言板

接著就可以上主頁面了

<!-- 2.留言本首頁 index.php -->
<!-- 本頁面顯示十條最近的的留言,並且有分頁功能 -->
<html>
 
<head>
  <title>歡迎來到陳雨情的留言本吼吼吼</title>
  <style type="text/css">
    TD{
      font-size: 12px;
      line-height: 150%;
    }
  </style>
</head>
 
<body>
  <table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black height=382>
    <tr>
      <td height=100 bgcolor=#6c6c6c style="font-size:30px;line-height:30px">
        <font color=#ffffff face="黑體">歡迎來到×××的留言本吼吼吼</font>
      </td>
    </tr>
    <tr>
      <td height=25>
        <a href=send.php>[我要寫留言]</a>
        <a href=login.php>[管理留言]</a>
      </td>
    </tr>
    <tr>
      <td height=200>
        <?php
          $link = mysqli_connect("127.0.0.1","Vmorish");
          mysqli_select_db($link,"gbook");
          $query = "select * from message";
          $result = mysqli_query($link,$query);
          if( mysqli_num_rows($result) < 1){
            echo "目前資料表中還沒有任何留言!";
          }else{
            $totalnum = mysqli_num_rows($result);//獲取資料庫中所有資料條數
            $pagesize = 7;//每頁顯示7條
            $page = $_GET["page"];
            if( $page == ""){
              $page = 1;
            }
            $begin = ($page-1)*$pagesize;
            $totalpage = ceil($totalnum/$pagesize);
            //輸出分頁資訊
            echo "<table border=0 width=95%><tr><td>";
            $datanum = mysqli_num_rows($result);
            echo "共有".$totalnum."條留言,每頁".$pagesize."條,共".$totalpage."頁。<br>";
            //輸出頁碼
            for( $i = 1; $i <= $totalpage; $i++){
              echo "<a href=index.php?page=".$i.">[".$i."]</a>";
            }
            echo "<br>";
            //從message表中查詢當前頁面所要顯示的留言,並根據時間排序
            $query = "select * from message order by addtime desc limit $begin,$pagesize";
            $result = mysqli_query($link,$query);
            $datanum = mysqli_num_rows($result);
            //迴圈輸出所有留言,如果管理員已經回覆則同時輸出回覆
            for( $i = 1; $i <= $datanum; $i++){//$datanum???
              $info = mysqli_fetch_array($result);
              echo "->[".$info['author']."]於".$info['addtime']."說:<br>";
              echo "".$info['content']."<br>";
              if( $info['reply'] != ""){
                // 顯示粗體
                echo "管理員回覆:".$info['reply']."<br>";
              }
              echo "<hr>";
            }//else結束
            echo "</td></tr></table>";
          }
          mysqli_close($link)
         ?>
      </td>
    </tr>
    <tr>
      <td height=80 bgcolor=#6c6c6c align=center>
        <font color="#FFFFFF">
          版權所有:<a href="http://blog.csdn.net/cherish0222" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Vmorish</a><br>
          E-mail:[email protected]
        </font>
      </td>
    </tr>
  </table>
 
</body>
 
</html>

效果:

PHP+MySql實現一個簡單的留言板

接著管理員登入咯

<!-- 3.管理員登入頁面 login.php -->
<!-- 供管理員登入 -->
<!-- 體會session實現使用者登入的方法 -->
 
<?php
  $name = $_POST["name"];
  if( $name != ""){
    $password = $_POST['password'];
    $link = mysqli_connect("127.0.0.1","Vmorish");
    mysqli_select_db($link,"gbook");
    $query = "select * from admin where username = '$name'";
    $result = mysqli_query($link,$query);
    if( mysqli_num_rows($result) < 1){
      echo "該使用者不存在,請重新登入!<br>";
    }else{
      $info = mysqli_fetch_array($result);
      if( $info['userpass'] != $password){
        echo "密碼輸入錯誤,請重新登入!<br>";
      }else{
        //如果使用者名稱密碼都正確,則註冊一個session來標記其登入狀態
        echo "hhhh<br>";
        session_start();
        // $_SESSION["login"] = "YES";
        echo "<script language=javascript>alert('登入成功!');location.href='manage.php';</script>";
      }
    }
    mysqli_close($link);
  }
 ?>
 
<html>
 
<head>
  <title>歡迎來到陳雨情的留言本吼吼吼</title>
</heda>
 
<body>
 
  <table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black height="358">
    <tr>
      <td height=100 bgcolor=#6c6c6c style="font-size:30px;line-height:30px">
        <font color=#ffffff face="黑體">歡迎來到×××的留言本吼吼吼</font>
      </td>
    </tr>
    <tr>
      <td height=25>
        <a href=send.php>[我要寫留言]</a>
        <a href=login.php>[管理留言]</a>
      </td>
    </tr>
    <tr>
      <td height=178>
        <form method="POST" action="login.php">
          <table border="1" width="95%" id="table1" cellspcing="0" cellpadding="0" bordercolor="#808080" style="border-collapse" height="154">
            <tr>
              <td colspan="2" height="29">
                <p align="center">歡迎管理員登入</p>
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p align="center">使用者名稱</P>
              </td>
              <td width="67%">
                <input type="text" name="name" size="20">
              </td>
            </tr>
            <tr>
              <td width="32%">
                <p align="center">密碼</p>
              </td>
              <td>
                <input type="password" name="password" size="20">
              </td>
            </tr>
            <tr>
              <td width="99%" colspan="2">
                <p align="center"><input type="submit" value="登入" name="B1"></p>
              </td>
            </tr>
          </table>
        </form>
      </td>
    </tr>
    <tr>
      <td height=80 bgcolor=#6c6c6c align=center>
        <font color="#FFFFFF">
          版權所有:<a href="http://blog.csdn.net/cherish0222" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Vmorish</a><br>
          E-mail:[email protected]
        </font>
      </td>
    </tr>
  </table>
 
</body>
 
</html>

效果:

PHP+MySql實現一個簡單的留言板

manage.php和reply.php和前面類似,就不給出了(我也還沒寫好誒…但要實現的跟前面類似

最後登出登入

<!-- 6.登出登入頁面 -->
<?php
  session_start();
  $_SESSION["login"]="";
  echo "已成功退出。[<a href=index.php>回首頁</a>]";
  exit;
 ?>

到此這篇關於PHP+MySql實現一個簡單的留言板的文章就介紹到這了,更多相關PHP留言板內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!