Php語言制作簡易的留言板(練習PHP Mysql方式對數據庫進行增、刪、查操作)
Php語言制作簡易的留言板(練習PHP Mysql方式對數據庫進行增、刪、查操作)
說說本次留言板是怎么實現!
首先用戶提交留言后,相關內容存入服務器,當他想看的時候后臺再把所有留言讀出來,最后顯示在瀏覽器上,用戶就可以看到留言了。也可以刪除顯示出來的信息。這其中后臺需要便于讀寫數據的一個工具,我選擇mysql數據庫來幫助我完成這些事。
我寫了主要是四個php文件,分別是:
conn.php 連接數據庫;
list.php 從數據庫中讀取留言內容,然后把它顯示在頁面上;
add.php php從頁面讀取留言相關內容,并且把它存入(Insert)數據庫;
delete.php 從list.php頁面顯示的留言板內容點擊刪除處理事件,刪除成功后自動跳轉到list.php頁面中;
php連接mysql數據庫,然后選擇其中一個數據庫,我這里選的是bbs數據庫(ps 之前創建的) 下面介紹幾個要用到的php庫函數,
①mysql_connect(“localhost”, “root”, “”)
php連接mysql,參數分別是mysql地址(localhost代表本機),用戶名,密碼
返回值:如果連接失敗返回false,成功返回一個連接標識符
②mysql_select_db($test, $conn);
mysql里可以有很多db,所以你需要選擇一個其中一個db進行接下來的操作。
參數:第一個是數據庫名稱,第二個是鏈接標識符,可以把①中的返回值放這里,代表的是我將使用①中的mysql。
返回值:false 連接失敗,true連接成功。
③mysql_query(query,connection)
參數:query代表你要mysql執行的語句
connection 可選,SQL連接標識符同上面所講
返回值:mysql_query() 僅對 SELECT,SHOW,EXPLAIN或DESCRIBE語句返回一個資源標識符,如果查詢執行不正確則返回 FALSE。對于其它類型的 SQL 語句,mysql_query() 在執行成功時返回 TRUE,出錯時返回 FALSE。個人對這個返回值的總結:此函數執行失敗就返回false;執行成功要看是什么語句,如果是SELECT,SHOW,EXPLAIN 或 DESCRIBE 語句,那么就會返回資源標識符,其他的語句就返回true ;
說了這么多, 留言板的脈絡已經出來了
1、連接數據的conn.php
</pre> <?php $conn = @ mysql_connect("localhost", "root", "") or die("數據庫鏈接錯誤"); mysql_select_db("test", $conn); mysql_query("set names 'utf8'"); ?>
2、顯示留言板主體內容的list.php頁面
</pre> <?php include ("conn.php"); ?> <?php echo "<div align='center'><a href='add.php'>繼續添加</a></div>"; ?> <table width=500 border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#add3ef"> <?php $sql = "SELECT * FROM `note`"; $query=mysql_query($sql); while ($row=mysql_fetch_array($query)){ ?> <tr bgcolor="#eff3ff"> <td>標題:<font color="red"><?=$row['title']?></font> 用戶:<font color="red"><?=$row['user'] ?></font><div align="right"><a href="preEdit.php?id=<?=$row['id']?>">編輯</a> | <a href="delete.php?id=<?=$row['id']?>">刪除</a></div></td> </tr> <tr bgColor="#ffffff"> <td>內容:<?=$row['content']?></td> </tr> <tr bgColor="#ffffff"> <td><div align="right">發表日期:</div></td> </tr> <?php }?> </table>
3、增加留言add.php頁面
</pre> <?php session_start(); //檢測是否登錄,若沒登錄則轉向登錄界面 if(!isset($_SESSION['userid'])){ header("Location:login.html"); exit(); } $userid = $_SESSION['userid']; $username = $_SESSION['username']; include 'conn.php'; if(isset($_POST['submit'])){ $sql="INSERT INTO note(id,user,title,content) VALUES (NULL, '$_POST[user]', '$_POST[title]', '$_POST[content]')"; mysql_query($sql); //頁面跳轉,實現方式為javascript $url = "list.php"; echo "<script language='javascript' type='text/javascript'>"; echo "window.location.href='$url'"; echo "</script>"; } ?> <script type="text/javascript"> function checkPost(){ if(addForm.user.value==""){ alert("請輸入用戶名"); addForm.user.focus(); return false; } if(addForm.title.value.length<5){ alert("標題不能少于5個字符"); addForm.title.focus(); return false; } } </script> <FORM name="addForm" METHOD="POST" ACTION="add.php" onsubmit="return checkPost();"> 用戶:<INPUT TYPE="text" NAME="user" /><br /> 標題:<INPUT TYPE="text" NAME="title" /><br /> 內容:<TEXTAREA NAME="content" ROWS="8" COLS="30"></TEXTAREA><br /> <INPUT TYPE="submit" name="submit" value="add" /></FORM>
4、刪除留言并跳轉到list.php主頁面delete.php
</pre> <?php include 'conn.php'; $id = $_GET['id']; $query="delete from note where id=".$id; mysql_query($query); ?> <?php //頁面跳轉,實現方式為javascript $url = "list.php"; echo "<script language='javascript' type='text/javascript'>"; echo "window.location.href='$url'"; echo "</script>"; ?>