只允许从表单访问 PHP 脚本,而不是直接访问

Jos*_*ase 5 php database security .htaccess

作为 PHP 的新手,我可能没有采取正确的表单路线,但在某种程度上,这种方法对我来说是有效的。以下是我的设置示例/

我在 www.foo.com/add.php 有一个表单,需要管理员登录到会话。该表单将数据插入数据库。提交后,操作将被设置为action="scripts/add.php",然后使用 PHP 标头函数将其重定向到www.foo.com/done.php

我想知道的是,您是否可以直接拒绝对脚本文件的访问,例如,如果您在网络浏览器中访问脚本文件,它可能会在数据库中输入一个空行,或者可能导致一些其他安全问题?

Gui*_*sel 7

如果表单是使用POST方法提交的(带有属性method="post"<form>,您仍然可以仅在 POST 请求上执行脚本,只需在顶部添加以下内容:

 if ($_SERVER['REQUEST_METHOD'] != 'POST') {
   exit;
 }
Run Code Online (Sandbox Code Playgroud)