刷新页面将重新发送表单数据,是否可以防止这种情况?(PHP)

twe*_*ypi 2 php mysql forms

我正在创建一个表单并使用它来获取数据输入以通过php发送到MySQL数据库.如果某人在页面上点击刷新,Firefox会将最后一组信息重新发送到php页面,然后将其发送到数据库.反正有没有阻止这个?

Sar*_*raz 6

要解决该问题,您需要遵循Post/Redirect/Get模式 :)

Post/Redirect/Get(PRG)是Web开发人员的常见设计模式,可帮助避免某些重复的表单提交,并允许用户代理使用书签和刷新按钮更直观地表现.


Ist*_*ros 5

您需要重定向到同一页面:

$current_url = (empty($_SERVER['HTTPS']) ? "http://" : "https://") . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
header ('Location: ' . $current_url);
exit ();
Run Code Online (Sandbox Code Playgroud)