留言板防灌水功能应该怎么做?怎么防止sql注入?用PHP编写 5

大佬留个Q啊,我把文件发过去您给我指点指点,... 大佬留个Q啊,我把文件发过去您给我指点指点, 展开
 我来答
miniappcy3tv95eaedrf
2019-05-29
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部

防灌水:

  1. 对无意义帖判定,比如:字数太少,纯数字,无意义的连续数字或字母。

  2. 发帖时间间隔和发帖量

  3. 系统设置一批关键词匹配,发现有类似的先设为需审核 ,由后台手动操作。

防sql注入

  1. 先对提交数据中的危险字符过滤或编码。比如:名称或帖子标题,一定不能是html,直接进行htmlencode ,最后输出到页面上,也不会变成html,而是显示原始字符。对需要使用html的内容部分,过滤script,style等标签,或者直接用strip_tags 函数只保留必要的段落等排版标签。

  2. 其次也可以考虑使用bbcode或markdown等对排版有限制的语法转义

  3. 数据库操作使用pdo参数编译的模式,可以有效防止提交数据中的注入字符(会变成正常字符插入到数据库中,这也可以防止误判,因为很多IT类的技术帖需要在内容中有这些关键字)

benhuang1024
2019-05-05
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部

防灌水加重复验证,请求频次验证,留言字符长度限制

防 SQL 注入,对所有输入加转义

<?php     
    function post_check($post)    
    {    
    if (!get_magic_quotes_gpc()) // 判断magic_quotes_gpc是否为打开    
    {    
    $post = addslashes($post); // 进行magic_quotes_gpc没有打开的情况对提交数据的过滤    
    }    
    $post = str_replace("_", "\_", $post); // 把 '_'过滤掉    
    $post = str_replace("%", "\%", $post); // 把' % '过滤掉    
    $post = nl2br($post); // 回车转换    
    $post= htmlspecialchars($post); // html标记转换       
    return $post;    
    }    
    ?>

引自 PHP中防止SQL注入的方法

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
armstrong93
2019-03-29
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
主要是转义里面的值,mysql_real_escape_string
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bf76782
2019-03-18
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
防灌水这个要看你怎么理解灌水这个定义了,sql注入的话其实来回也是那几种方法特殊字符的转义,相关安全函数的开启什么的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式