昨天已經把留言本的大概功能弄了出來`~~~今天再稍微改善下加一個管理員管理留言的功能~~~這里最主要要用到 $_session['item'] 這個東東~~`
好了`~`先把昨天的稍微改一下 再把這個功能加進去~~~
首先我們在首頁同時顯示留言,以及留言添加框~~這樣使留言者方便使用`~`
不說多了`~把代碼貼出來再說:
index.php
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
- <title>留言本</title>
- </head>
- <body>
- <a href="admin_login.htm" tagert="_blank">留言管理</a>
- <?
- $conn=MySQL_connect ("localhost:6033", "root", ""); //打開MySQL服務器連接
- mysql_select_db("guest_book"); //鏈接數據庫
- mysql_query("set names GB2312"); //解決中文亂碼問題
- $exec="select * from contents"; //sql語句
- $result=mysql_query($exec); //執行sql語句,返回結果
- while($rs=mysql_fetch_object($result))
- {
- echo "<table><tr><td>姓名:".$rs->name."</td></tr>";
- echo "<tr><td>留言:".$rs->content."</td></tr></table><br/>";
- echo ".............................................................................................................................";
- }
- mysql_close();
- ?>
- <br><br><br>
- <form action="updata.php" method="post" name="name1">
- 姓名:<input type="text" name="user_name"><br>
- 留言:<textarea name="post_contents" rows="10" cols="50"></textarea>
- <input type="submit" value="提交留言">
- </form>
- </body>
- </html>
updata.php頁再加個header("location:index.php");語句重定向到主頁面`~~
updata.php
- <?
- $name=$_POST['user_name'];
- $content=$_POST['post_contents'];
- $conn=mysql_connect("localhost:6033", "root", "");
- mysql_query("set names GB2312"); //解決中文亂碼問題
- mysql_select_db("guest_book");
- $exec="insert into contents (name,content) values ('".$_POST['user_name']."','".$_POST['post_contents']."')";
- $result=mysql_query($exec);
- mysql_close();
- header("location:index.php");
- ?>
HOHO~~~是不是用起來有那么回事了`~~
好的`~下面再加個管理功能 ~~那么這個留言本就更加強大了`~
留言管理模塊 分為 管理員登錄頁admin_login.htm ,管理員驗證頁admin_check.php 后臺管理首頁admin_index.php
先弄這個登錄頁面admin_login.htm
- <form action="admin_check.php" method="post" name="form2">
- 用戶名:<input type="text" name="admin_name">
- 密 碼:<input type="passWord" name="admin_password">
- <input type="submit" value="進入后臺管理">
- </form>
這個簡單得再簡單不過了,我就不說什么了`~~
admin_check.php管理員驗證
- <?
- session_start();
- $admin_name=$_POST['admin_name'];
- $admin_password=$_POST['admin_password'];
- $conn=mysql_connect ("localhost:6033", "root", "");
- mysql_select_db("guest_book");
- $exec="select * from admin where admin_name='".$admin_name."'";
- $result=mysql_query($exec);
- if ($rs=mysql_fetch_object($result))
- { if ($rs->admin_password==$admin_password)
- {$_SESSION['admin']="OK";
- header("location:admin_index.php");
- }
- else echo"密碼不正確";
- }
- else echo"用戶名不正確";
- mysql_close();
- ?>
這里最主要的就是session~~~凡事要用到session的地方.在頁面最開始處要加上這一句session_start();否則就無法使用~~那么session究竟是什么東東呢?由于網頁的傳輸方式(也就是http這個東西) 不是永久連接的~~`所以服務器無法在兩個不同頁面之間傳送變量`~~唉.我一下子也說不清楚`~~還是看看這里 http://www.survivalescaperooms.com/php/phphuihua/
上面有很詳細的介紹.反正就是用這個東西來驗證管理員的身分了`~~
好了下面說后臺管理主頁面admin_index.php
- <?
- session_start();
- if($_SESSION['admin']=="OK")
- {
- $conn=mysql_connect ("localhost:6033", "root", "");
- mysql_select_db("guest_book");
- $exec="select * from contents";
- $result=mysql_query($exec);
- while($rs=mysql_fetch_object($result))
- {
- echo "<table><tr><td>姓名:".$rs->name."</td></tr>";
- echo "<tr><td>留言:".$rs->content."</td></tr></table><br/>";
- echo "<a href=modify.php?id=".$rs->id." >修改</a> <a href=delete.php?id=".$rs->id." >刪除</a>";
- }
- echo "<br><br><br><br><br><a href=index.php >回首頁</a>";
- }
- mysql_close();
- ?>
這里最主要是這一句echo "<a href=modify.php?id=".$rs->id." >修改</a><a href=delete.php?id=".$rs->id." >刪除</a>";
用來向所連接到的地址傳遞參數~~看看下面的就知道有什么用了
modify.php
- <?
- session_start();
- if($_SESSION['admin']=="OK")
- {
- $conn=mysql_connect ("localhost:6033", "root", "");
- mysql_select_db("guest_book");
- $exec="select * from contents where id=".$_GET['id']; /*這里這個$_GET['id']就是取得從那個連接傳遞過來的參數拉 */
- $result=mysql_query($exec);
- $rs=mysql_fetch_object($result);
- $name=$rs->name;
- $content=$rs->content;
- $id=$rs->id;
- ?>
- <form action="modify2.php" method="post" name="name1">
- ID :<?=$id?><input type=hidden name=id value=<?=$id?> >
- 姓名:<?=$name?><br>
- 留言:<textarea name="post_contents" rows="10" cols="50"><?=$content?></textarea>
- <input type="submit" value="提交修改">
- </form>
- <?
- }
- mysql_close();
- ?>
這里這個<?=$id> 其實就等于 echo $id
再看看最終的數據修改實現頁面modify2.php
- <?
- session_start();
- if($_SESSION['admin']=="OK")
- {
- $conn=mysql_connect ("localhost:6033", "root", "");
- mysql_select_db("guest_book");
- $exec="select * from contents where id=".$_GET['id'];
- $exec="update contents set content='".$_POST['post_contents']."' where id=".$_POST['id'];
- $result=mysql_query($exec);
- }
- mysql_close();
- header("location:admin_index.php");
- ?>
最后就是刪除功能的實現了
delete.php
- <?
- session_start();
- if($_SESSION['admin']=="OK")
- {
- $conn=mysql_connect ("localhost:6033", "root", "");
- mysql_select_db("guest_book");
- $exec="delete from contents where id=".$_GET['id'];
- mysql_query($exec);
- mysql_close();
- header("location:admin_index.php");
- }
- ?>
今天用到的知識如下:
1: session_start(); $_SESSION['變量名']=$變量名 或者 某一特定值
2: <a href="#####.php?var=##">aaa</a>用這個方法來傳遞參數 同時用 $_GET['var']來接收傳遞過來的值
3: 數據修改 :$exec="update tablename set item1='".$_POST['item1']."' where ...";
4: 數據刪除 :$exec="delete from tablename where...";
是不是看起來一團/亂麻~~~~明天用include 還有requre 好好修改下`~~~~讓程序看起來清晰點~~~
新聞熱點
疑難解答