留言板程序需要由php +数据库来实现本教程主要是讲到了关于php mysql的留言系统的实现过程,包括增加 修改 删除及编辑工作,是对php初学才学习的好资料,效果图如下:
留言板的sql文件,可直接导入到mysql,代码如下:
- create database form; use form; CREATE TABLE `message` ( `id` tinyint(1) NOT NULL auto_increment, `user` varchar(25) NOT NULL, `title` varchar(50) NOT NULL, `content` tinytext NOT NULL, `lastdate` date NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1 ;
conn.php 数据库连接文件,代码如下:
- <?php
- $conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误");
- mysql_select_db("form", $conn);
- mysql_query("set names 'gbk'");
- ?>
add.php 根据用户提交的留言信息保存到数据库,代码如下:
- <?php
- include 'conn.php';
- if($_POST['submit']){
- $sql="INSERT INTO message(id,user,title,content,lastdate) VALUES (NULL, '$_POST[user]', '$_POST[title]', '$_POST[content]', now())";
- mysql_query($sql);
- //页面跳转,实现方式为javascript
- $url = "list.php";
- echo "<script language='javascript' type='text/javascript'>";
- echo "window.location.href='$url'";
- echo "</script>"; 12 }
- ?>
- <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>
list.php 以列表形式输出留言,代码如下:
- <?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 message order by id";
- $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">发表日期:<?=$row[lastdate]?></div></td>
- </tr>
- <?php }?>
- </table>
delete.php 删除留言,根据用户提交的数据,我们以获取留言内容的ID进行删除操作,代码如下:
- <?php include 'conn.php';
- $id = $_GET['id'];
- $query="delete from message 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>"; ?>
preEdit.php 编辑就是利用update更新用户重新提交的数据并替换以前的记录以id为唯一标识,代码如下:
- <?php
- include 'conn.php';
- $id=$_GET[id];
- $query="SELECT * FROM message WHERE id =".$id;
- $result=mysql_query($query);
- while ($rs=mysql_fetch_array($result)){
- ?>
- <FORM METHOD="POST" ACTION="postEdit.php">
- <input type="hidden" name="id" value="<?=$rs[id]?>">
- 用户:<INPUT TYPE="text" NAME="user" value="<?=$rs[user]?>"/><br />
- 标题:<INPUT TYPE="text" NAME="title" value="<?=$rs[title]?>"/><br />
- 内容:<TEXTAREA NAME="content" ROWS="8" COLS="30"><?=$rs[content]?></TEXTAREA><br />
- <INPUT TYPE="submit" name="submit" value="edit"/>
- </FORM>
- <?php }?>
postEdit.php
- <?php
- include 'conn.php';
- $query="update message set user='$_POST[user]',title='$_POST[title]',content='$_POST[content]' where id='$_POST[id]'";
- mysql_query($query);
- ?>
- <?php
- //页面跳转,实现方式为javascript
- $url = "list.php";
- echo "<script language='javascript' type='text/javascript'>";
- echo "window.location.href='$url'";
- echo "</script>";
- ?>
总结:这是一个完整的留言板系统,只要根据上面的提示保存成文件就可以很好的实现留言功能了,留言板主要有对数据的读取,分页以及数据的删除,编辑,我们分用到sql delete,update,insert 这三种语句,相对来说是基础知识了.
新闻热点
疑难解答