来自经典的打造简单的PHP&MYSQL留言板

表一:admin
字段:id(int11)name(varchvr)password(varchvr) 表二:lo
字段:id(int11)username(varchvr)sex(varchvr)qq(varchvr)email(varchvr)info(text)ip(varchvr)submit_time(datetime) 1、conn.PHP(连接数据库文件)
<div class="codetitle"><a style="CURSOR: pointer" data="96827" class="copybut" id="copybut96827" onclick="doCopy('code96827')"> 代码如下:

<div class="codebody" id="code96827">
<?PHP
MysqL_connect("localhost","root","");//连接数据库
MysqL_select_db("lyb");//选择数据库
?>

2、header.PHP(公用头部文件)
<div class="codetitle"><a style="CURSOR: pointer" data="88541" class="copybut" id="copybut88541" onclick="doCopy('code88541')"> 代码如下:
<div class="codebody" id="code88541">
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
<htmlxmlns="http://www.w3.org/1999/xhtml"&gt;

<Metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
银子留言板Version1.0

<linkhref="css.css"rel="stylesheet"type="text/css"/>

<divid="head">
<divid="head_l">


<divid="head_r">银子留言板Version1.0



3、footer.PHP(公用底部文件)
<div class="codetitle"><a style="CURSOR: pointer" data="66515" class="copybut" id="copybut66515" onclick="doCopy('code66515')"> 代码如下:<div class="codebody" id="code66515">
<?PHP
$counterFile="conter.xml";
functiondisplayCounter($counterFile){
$fp=fopen($counterFile,"rw");
$num=fgets($fp,5);
$num+=1;
print"<divid=\"footer\">银子留言板Version1.0您是第"."$num"."位无聊的银";
exec("rm-rf$counterFile");
exec("echo$num>$counterFile");
}
if(!file_exists($counterFile)){
exec("echo0>$counterFile");
}
displayCounter($counterFile);
?>

4、index.PHP(首页)
<div class="codetitle"><a style="CURSOR: pointer" data="6036" class="copybut" id="copybut6036" onclick="doCopy('code6036')"> 代码如下:<div class="codebody" id="code6036">
<?PHP
require_once("conn.PHP");
require_once("header.PHP");
session_start(); //分页代码开始
$pagesize=10;//设置每页显示条数
$rs=MysqL_query("selectcount()fromlo");//取得记录总数,计算总页数用
$myrow=MysqL_fetch_array($rs);
$numrows=$myrow[0];//计算总记录 $pages=intval($numrows/$pagesize);
if($numrows%$pagesize)$pages++;//设置页数
if(isset($_GET['page']))
{
$page=intval($_GET['page']);
}
else
{
$page=1;//设为第一页
}
$offset=$pagesize
($page-1);//计算记录偏移量
//分页代码结束
$sql="selectid,username,sex,qq,email,info,ip,DATE_FORMAT(submit_time,'%Y年%m月%d日%T')fromloorderbyiddesclimit$offset,$pagesize";//用到了DATE-FORMAT格式化日期格式
$result=MysqL_query($sql);
$num=MysqL_num_rows($result); if($num>0){
while($row=MysqL_fetch_array($result))
{
//echoprint_r($row);
if($row[2]=="男")//这个使性别改成你想要的名称^_^
{
$sex="帅锅";
}
else
{
$sex="美女";
}
?> <divid="show">
<pclass="num">第[<?=$row[0]?>]条留言


<pclass="unline">留言人:<spanclass="blue"><?=$row[1]?>性别:<?=$sex?>留言时间:<?=$row[7]?><?if($row[3]){?><ahref="http://wpa.qq.com/msgrd?V=1&Uin=<?=$row[3]?>&Site=http://www.loai.cn&Menu=yes"&gt;<imgsrc="img/qq.gif"alt="<?=$row[3]?>"/><?}?><?if($row[4]){?><ahref="mailto:<?=$row[4]?>"><imgsrc="img/email.gif"alt="<?=$row[4]?>"/><?}?><?if($_SESSION["key"]==1){?>IP:<?=$row[6]?><ahref="update.php?wuleying&id=<?=$row[0]?>">更改<ahref="delete.php?wuleying&id=<?=$row[0]?>">删除<?}?>


<pclass="blue">留言内容:


<divid="show_info"><?=nl2br(htmlspecialchars($row[5]))?>

<?PHP
}
}
else
{
echo"<divid=\"show\">无数据......";
}
?> <divid="show_page">


<?PHP
$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pages;
if($page==1&&$pages>1)
{
echo"首页|";
echo"上一页|";
echo"<ahref=\"index.php?page=".$next."\">下一页|";
echo"<ahref=\"index.php?page=".$last."\">尾页|";
}
elseif($page>=1&&$page!=$pages&&$num>0)
{
echo"<ahref=\"index.php?page=".$first."\">首页|";
echo"<ahref=\"index.php?page=".$prev."\">上一页|";
echo"<ahref=\"index.php?page=".$next."\">下一页|";
echo"<ahref=\"index.php?page=".$last."\">尾页|";
}
elseif($page==$pages&&$page!=1)
{
echo"<ahref=\"index.php?page=".$first."\">首页|";
echo"<ahref=\"index.php?page=".$prev."\">上一页|";
echo"下一页|";
echo"尾页|";
}
elseif($page==$pages)
{
echo"首页|";
echo"上一页|";
echo"下一页|";
echo"尾页|";
}
else
{
echo"首页|";
echo"上一页|";
echo"下一页|";
echo"尾页|";
}
?>
<?=$pages?>页|当前第<?=$page?>页|共<?=$numrows?>&nbsp条留言



<?PHP
MysqL_close();
?> <?PHP
require_once("footer.PHP");
?>

5、post.PHP(提交留言页面)
<div class="codetitle"><a style="CURSOR: pointer" data="87473" class="copybut" id="copybut87473" onclick="doCopy('code87473')"> 代码如下:<div class="codebody" id="code87473">
<?
require_once("header.PHP");
?>
<divid="input">
<formmethod="post"action="input.PHP"name="form1">

提交留言


姓名:<inputtype="text"name="name"size="20"class="y"/>


性别:<inputname="sex"type="radio"value="男"checked/>帅锅<inputtype="radio"name="sex"value="女"/>美女


QQ :<inputtype="text"name="qq"class="y"/>(可选填)


Email:<inputtype="text"name="email"class="y"/>(可选填)


留言内容


<textareaname="info"rows="5"cols="40">


<pclass="cen">
<inputtype="submit"value="偶填好了"/>
<inputtype="reset"value="偶要重写">


<pclass="cen1">银子留言板Version1.0






6、input.PHP(插入留言)
<div class="codetitle"><a style="CURSOR: pointer" data="69719" class="copybut" id="copybut69719" onclick="doCopy('code69719')"> 代码如下:<div class="codebody" id="code69719">
<?PHP
require_once("conn.PHP");
$username=$_POST['name'];
$sex=$_POST['sex'];
$qq=$_POST['qq'];
$email=$_POST['email'];
$info=$POST['info']; if(strrpos($username,"<")!==false||strrpos($username,">")!==false||strrpos($username,"@")!==false||strrpos($username,"\"")!==false||strrpos($username,"'")!==false||strrpos($username,"")!==false)
{
echo"";
exit();
} if(!ereg("^[0-9]{0,}$",$qq))//用正则检查QQ格式
{
echo"";
exit();
} if($email)
{//如果填写了邮箱就用正则检查邮箱格式
if(!ereg("^[a-zA-Z0-9_-.]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$",$email))
{
echo"";
exit();
}
} if(!$username)
{
echo"";
exit();
}
elseif(!$info)
{
echo"";
exit();
}
else
{
$ip=getenv('REMOTE_ADDR');//获取客户端IP地址 $sql="insertintolo(username,submit_time)values('$username','$sex','$qq','$email','$info','$ip',NOW())"; $result=MysqL_query($sql); MysqL_close(); echo"";
}
?>

7、update.PHP(修改留言页)
<div class="codetitle"><a style="CURSOR: pointer" data="96422" class="copybut" id="copybut96422" onclick="doCopy('code96422')"> 代码如下:<div class="codebody" id="code96422">
<?PHP
session_start();
require_once('conn.PHP');
require_once('header.PHP');
if($_SESSION["key"]==1)
{
$id=$_GET['id'];
$sql="selectfromlowhereid=".$id;
$result=MysqL_query($sql);
$row=MysqL_fetch_array($result); ?> <divid="update">
<formaction="updatepost.PHP?wuleying&id=<?=$row[0]?>"method="post">

修改留言


姓名:<inputtype="text"value="<?=$row[1]?>"name="name"class="y">


留言:


<textareaname="info"rows="5"cols="35"><?=$row[5]?>


<pclass="cen"><inputtype="submit"value="偶要修改"/>


<pclass="cen1">银子留言板Version1.0



<?PHP
}
else
{
header('location:index.PHP');
}
?>
8、updatepost(修改提交页)
<div class="codetitle"><a style="CURSOR: pointer" data="16312" class="copybut" id="copybut16312" onclick="doCopy('code16312')"> 代码如下:<div class="codebody" id="code16312">
<?PHP
require_once('conn.PHP'); $username=$_POST['name'];
$info=$_POST['info'];
$id=$_GET['id'];
//echo$id; $sql="updatelosetusername='".$username."',info='".$info."'whereid=".$id;
MysqL_query($sql); echo"";
?>

9、delete.PHP(删除留言页)
<div class="codetitle"><a style="CURSOR: pointer" data="83200" class="copybut" id="copybut83200" onclick="doCopy('code83200')"> 代码如下:<div class="codebody" id="code83200">
<?PHP
session_start();
require_once('conn.PHP'); $id=$_GET['id']; if($_SESSION["key"]==1)
{
$sql="deletefromlowhereid=".$id;
MysqL_query($sql);
echo"";
}
else
{
header('location:index.PHP');
}
?>

10、admin.PHP(管理登录页)
<div class="codetitle"><a style="CURSOR: pointer" data="82537" class="copybut" id="copybut82537" onclick="doCopy('code82537')"> 代码如下:<div class="codebody" id="code82537">
<?PHP
require_once('conn.PHP');
require_once('header.PHP');
?> <divid="admin">
<formmethod="post"action="adminpost.PHP">

管理员登录


姓名:<inputtype="text"name="name"size="20"class="y"/>


密码:<inputtype="password"name="password"size="20"class="y"/>


<pclass="cen"><inputtype="submit"value="管理员登录"/>


<pclass="cen1">银子留言板Version1.0





11、adminpost.PHP(管理验证页)
<div class="codetitle"><a style="CURSOR: pointer" data="57970" class="copybut" id="copybut57970" onclick="doCopy('code57970')"> 代码如下:<div class="codebody" id="code57970">
<?PHP
session_start();
require_once('conn.PHP'); $name=$_POST['name'];
$password=$_POST['password']; $sql="select
fromadminwherename='".$name."'";
$result=MysqL_query($sql);
$num=MysqL_numrows($result); if(strrpos($name,"<")!==false||strrpos($name,">")!==false||strrpos($name,"@")!==false||strrpos($name,"\"")!==false||strrpos($name,"'")!==false||strrpos($name,"")!==false)
{
echo"";
} if($num)
{//如果用户存在,就检查密码是否正确
$rs=MysqL_fetch_array($result);
if($rs[2]!=$password)
{
echo"";
}
else
{//用户名,密码都正确,注册SESSION变量,然后跳转首页
$_SESSION["key"]=1;
echo"";
}
}
else
{//如果没有这个用户
echo"";
}
?>

12、adminexit.PHP(退出管理页)
<div class="codetitle"><a style="CURSOR: pointer" data="31671" class="copybut" id="copybut31671" onclick="doCopy('code31671')"> 代码如下:<div class="codebody" id="code31671">
<?PHP
session_start();
$_SESSION["key"]=0;//使SESSION不为1,0为游客,1为管理员 header('location:index.PHP');
?>

只是些基本的东东,像MD5加密,UBB,表情图片,添加管理员账号,回复留言(-_!!)等我都没加上去,有兴趣的同学可以完善下,不足的地方请指出^_^ 管理员账号:wuleying密码:123456
留言板打包下载

相关文章

Hessian开源的远程通讯,采用二进制 RPC的协议,基于 HTTP 传输。可以实现PHP调用Java,Python,C#等多语...
初识Mongodb的一些总结,在Mac Os X下真实搭建mongodb环境,以及分享个Mongodb管理工具,学习期间一些总结...
边看边操作,这样才能记得牢,实践是检验真理的唯一标准.光看不练假把式,光练不看傻把式,边看边练真把式....
在php中,结果输出一共有两种方式:echo和print,下面将对两种方式做一个比较。 echo与print的区别: (...
在安装好wampServer后,一直没有使用phpMyAdmin,今天用了一下,phpMyAdmin显示错误:The mbstring exte...
变量是用于存储数据的容器,与代数相似,可以给变量赋予某个确定的值(例如:$x=3)或者是赋予其它的变...