如果$_POST缺少变量,应用程序应该做什么,这是执行操作所必需的?
例如,假设我有一个表单,<input name="title">并且我有一些页面,它处理生成的POST请求.现在,这个页面应该做什么,如果它收到请求,但没有$_POST['title']设置变量?
为了说清楚:通过"未设置"我的意思是,一个无效的请求,普通用户不能做,只有有人向我的表单处理页面发出手动请求,即有人试图用我的网站做事,我不希望它完成.
一些可能性:
die.检查并清理您预期的 POST 密钥。
if (isset($_POST['title'])) {
// sanitize and use title here
}
else die("Missing required field: 'title'.");
Run Code Online (Sandbox Code Playgroud)
编辑:因为我们不喜欢 die(),这个怎么样:
if (isset($_POST['title'])) {
// sanitize and use title here
}
else
{
// handle an invalid POST. You could redirect to form
// page, display an error, or whatever works for your
// application.
}
Run Code Online (Sandbox Code Playgroud)