A. php留言板审核功能怎么做
第一步:把留言板的列表数据列出来(按留言倒序查询),正常的呈现都是表格的方式。
第二部:每行留言都有审核通过,审核不通过的按钮。正常选择不通过需要填写原因。
如图所示
B. 关于php简易留言板的一小段代码..
我先给每行程序加上注释
<?php
$name=$_POST['name'];//获取表单提交过来的数据
$note=$_POST['note'];//同上
$db=new mysqli('localhost','root','123','dlw');//连接mysql数据库并选择dlw数据库,很老的写法了,不建议这么使用。
$sql="insert into gustbook values(name,time,words)";//sql语句
$sql=$sql.$name;//等同于sql .= $name 相当于让上面那条sql语句后面连接$name但是这里在$name前面漏掉了一个( 应该是$sql = $sql."(".$name
$sql=$sql."',now(),'".$note."')";//同上
$result=$db->query($sql);//执行sql语句
echo"<center>write successfully.</center><br><br>";//输出write successfully字符串,没有任何意义,因为不管执行成不成功他都输出。
?>
<html>
<body bgcolor="FFCCCC">
<center>
<a href="do.php">write again</a><br><br>
<a href="index.php">check out the message</a>
</center>
</body>
</html>
这应该是个很老的程序,你要用首先要改正几个地方的写法
1、$db=new mysqli('localhost','root','123','dlw');
最好写成
mysql_connect('localhost','root','123');
mysql_slect_db('dlw');
2、 $sql="insert into gustbook values(name,time,words)";
$sql=$sql.$name;
$sql=$sql."',now(),'".$note."')";
可以写一个sql语句就可以了,不用去连接,而且最好用标准的写法。
$sql = "insert into gustbook (name,time,words) values ('".$name."',now(),'".$note."')";
3.$result=$db->query($sql);
echo"<center>write successfully.</center><br><br>";
加一个写入成功的判断
if(mysql_query($sql)){//注意这里不是$db因为我们前面把mysqli这个类已经省掉了。
echo"<center>write successfully.</center><br><br>";
}else{
"<center>write false.</center><br><br>";
}
具体留言不成功,可能还有几个问题,首先你的数据库有没有这几个字段,还有具体有没有连接成功数据库,你可以用phpmyadmin看一看你的留言内容是不是已经写入数据库,如果有但没显示,那应该是读取时候的问题,就不是你这个程序的问题了。
你用我给说的写法试一下也不行吗。
mysql_slect_db('dlw');
你确定数据库连接成功了吗,
把mysql_connect('localhost','root','123');改为
mysql_connect('localhost','root','123') or die("数据库连接不成功");
如果数据没有进去,那就跟index.php没有任何关系,我看一下你现在的这个程序。表单还有添加的程序,还有数据表的结构。
C. php制作留言板代码
<form action="留言方法,也可以是留言.php文件,也可以是当前页面" method="get">
<p>First name: <input type="text" name="fname" /></p>
<p>Last name: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>
php:
$fname=$_GET[fname];
$lname=$_GET[lname];
$sql = "insert into 表名(字段1,字段2) values('$fname','$lname')";
if(!$sql ){
return "插入失败";
}else{
return "成功添加数据";
}
D. php留言板项目怎么做
本项目需要锋键数phpmysql来实现。
首先需要分析数据库:
需要建立用户表(user)
表中字段:编号(id int primary key auto_increment),昵称(nickname varchar(255)),性别(sex int(1) 男为1,女为0),邮箱(email varchar(255)),注册时间(reg_time varchar(255) 时间戳)
还需要建立留言表(leaveword)
表中字段:编号(id int primary key auto_increment),留言用户编号(user_id int),留言内容(content text),留言时间(leaveword_time varchar(255))
建完表并插入一些测试数据后,就开始设计页亮迹面了。
当用户登录后,需要把用户的id存入session中$_SESSION['user_id'],以便用来验证用户是否登录,是否有权限发表留言。
用户进入到留言页面中以后,需要分页展示其他(包括自银首己)的留言。
E. 留言板防灌水功能应该怎么做怎么防止sql注入用PHP编写
防灌水:
对无意义帖判定,比如:字数太少,纯数字,无意义的连续数字或字母。
发帖时间间隔和发帖量
系统设置一批关键词匹配,发现有类似的先设为需审核 ,由后台手动操作。
防sql注入
先对提交数据中的危险字符过滤或编码。比如:名称或帖子标题,一定不能是html,直接进行htmlencode ,最后输出到页面上,也不会变成html,而是显示原始字符。对需要使用html的内容部分,过滤script,style等标签,或者直接用strip_tags 函数只保留必要的段落等排版标签。
其次也可以考虑使用bbcode或markdown等对排版有限制的语法转义
数据库操作使用pdo参数编译的模式,可以有效防止提交数据中的注入字符(会变成正常字符插入到数据库中,这也可以防止误判,因为很多IT类的技术帖需要在内容中有这些关键字)