PHP刷新,如何停止页面刷新时再次调用先前的函数?

问题描述

| 我有一个文件内容导入MysqL并返回结果的函数。如果刷新页面并单击“是”,它将再次将具有相同内容输出加倍。 我该如何阻止这种情况的发生?在这种特殊情况下,地址栏中没有URI,但在其他功能上却存在。     

解决方法

您应该只检查数据库中的内容是否存在,如果不存在,则填充它们。否则不要运行该功能。 伪代码:
if !database.containsRecords
  fillDatabase()
end
最重要的是,在POST请求之后重定向始终是一个好习惯。因此,您需要:
fillDatabase();
header(\"Location page.php\");
exit();
    ,在每次页面加载时查询数据库,查看是否已填充该数据库。如果已填充,则不要尝试再次填充它。     ,您应该使用POST-redirect-GET模式。 更新数据库后,将HTTP重定向发送到显示结果的单独页面。 刷新浏览器将重新加载该单独的页面。     ,我假设您使用POST表单上传文件。 您可以在表单中包含具有伪随机唯一ID的隐藏输入字段。 如果用户通过POST重新发送数据,则可以检查是否已经处理了该请求。 隐藏的字段不会保存,因为用户可以对其进行编辑,但是您可以检测到意外的重新提交。