我正在创建一个网站,我尝试尊重模型,视图,控制器架构。 有时我在html View部分中调用php函数,例如以下面的形式:
<html>
<form role="form" action="#" method="POST">
<div class="col-sm-6">
<?php $workinghours->isCheckedWH($db, 'workinghours', $id, 'day', 'open', 'closed', 'check_list[]'); ?>
</div>
<div class="row">
<div class="col-sm-offset-1 col-sm-8">
<br>
<button type="submit" class="btn btn-default" name="modify_wh" value="modify">Modify</button>
</form>
</html>
这样做的安全性是否存在风险?有人可以修改函数中的参数以使evrything崩溃。如果是,那么阻止它的最佳解决方案是什么?
非常感谢。
答案 0 :(得分:0)
用户无法“看到”或崩溃您的功能,例如服务器响应竞争HTML(或其他格式:XML,TEXT,...)。
如果您使用请求数据而不进行过滤,则用户可能会崩溃您的代码:
$workinghours->isCheckedWH($db, 'workinghours', $_GET['id'], 'day', 'open', 'closed', 'check_list[]');
答案 1 :(得分:0)
您的PHP代码永远不会到达客户端,因为它在服务器上被解释。以这种方式显示数据在安全方面没有问题,但是在从用户那里获取输入时应该小心,因为可能的代码注入,例如SQL injections。
您应始终清理并验证用户输入。已经有a post, that describes this in a bit more detail。