小迪安全-2024 22天web开发

留言板功能

开发所用的工具

先连接数据库,位测试的留言准备好数据库存储环境

在创建表

对数据库的操作函数

这里操作完之后,要写一个html提交的表单来接受留言板的留言,用到dw工具

插入了这四个内容就自动生成了html代码,剩下的自己在修改修改,然后数据库连接上

php自带的一些全局变量

通过server就可以获取服务端的一些信息

这里就有需要获取的ip

然后开始对留言板的代码进行优化

这里就实现了留言的提交和输出功能,但这样的代码是不符合规范的

所以还有其他的文件,一个专门数据库的链接的代码,一个专门管理留言后台功能

这就诞生了config配置文件,连接数据库,只需要包含他即可

后台管理删除留言的文件

然后代码可以直接写成函数调用

只需要在代码最下面写这两个就可以调用函数里面的代码

然后留言板是可以上传图片的,这个不太好写,就可以直接调用富文本编译器

只需要下载编译器的文件代码,放到同一个目录,然后使用代码包含调用jike

引入编译器

内容哪里就变成了编译器

而引用了编译器,如果编译器有漏洞,造成的安全问题是编译器的漏洞,只能看编译器厂商升级修复,或者自己找对应的js代码修复。而不是自己写的代码造成的安全

但是自己写的代码并没有什么验证,也很容易出安全问题,比如存储型xss

全部代码

gbook.php

<form action="gbook.php" method="post"><!--指向传递数据的文件-->
    <meta charset="utf-8">
    用户名:<input type="text" name="username"><!--传参值-->
	<br>
<br>
	内容:<textarea name="content"></textarea>
	<br>
    <input type="submit" name="submit" id="submit" value="提交">
    <br>
</form>
<?php
//数据库链接
include 'config.php';

function gbook_add($con){
    $u=@$_POST['username'];//接受变量的值
    if(isset($u)) {
        $c = @$_POST['content'];
        $i = @$_SERVER['REMOTE_ADDR'];//用户ip
        $ua = @$_SERVER['HTTP_USER_AGENT'];//浏览器ua头
        $sql = "insert into gbook(`username`,`content`,`ipaddr`,`uagent`) value('$u','$c','$i','$ua');";
        if (mysqli_query($con, $sql)) {
            echo "<script>alert('留言成功')</script>";

        }
    }
}
function show_gbbook($con){
    $sql1="select * from `gbook`;";
            $data1=mysqli_query($con,$sql1);
            while($row=mysqli_fetch_row($data1)){
                echo '<hr>';
                echo '用户名'.$row[0].'<br>';
                echo '内容'.$row[1].'<br>';
                echo 'ip'.$row[2].'<br>';
                echo 'ua头'.$row[3].'<br>';
            }
}
gbook_add($con);
show_gbbook($con);





gbook_admin

<?php
include'../config.php';



$sql1="select * from `gbook`;";
$data=mysqli_query($con,$sql1);
while($row=mysqli_fetch_row($data))
{
    echo '<hr>';
    echo '用户名'.$row[0].'<br>';
    echo '内容'.$row[1].'<br>';
    echo 'ip'.$row[2].'<br>';
    echo 'ua头'.$row[3].'<br>';
    echo "<a href='gbook-admin.php?del=$row[0]'>删除</a>>";
}
if(isset($_GET['del'])){
    $delstr=@$_GET['del'];
    $sql2="delete from `gbook` where `username`='$delstr';";
    if(mysqli_query($con,$sql2)){
        echo "<script>alert('删除成功')</script>";
    }else{
        echo "<script>alert('删除失败')</script>";
    }

}

ping

an

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值