在PHP中如何删除查询字符串以避免人们刷新启动过程两次?

Fre*_*edv 2 php http

在PHP我正在使用GET创建启动动作的查询字符串:例如,当我去:

www.example.com/index.php?mode=action&name=launch_this

它将获得mode = action和name = launch_this,php将启动一个名为"launch_this"的函数

但是,我怎样才能避免人们刷新此页面然后重新启动该过程?

我希望能够获得这些参数一次,并将客户端的url转换为index.php而不带参数..

可能吗 ?谢谢

JB *_*zet 5

修改服务器上的状态或启动进程的操作不应使用GET,而应使用POST.如果您使用POST并且用户刷新,浏览器将至少提示确认.

为避免刷新,您应该在启动进程后发送重定向:

  1. 用户帖子以启动操作
  2. 服务器启动操作并发送重定向
  3. 用户浏览器接收重定向并获取给定URL的页面
  4. 用户刷新并重新加载页面,但不会重新启动该操作.

此模式称为发布/重定向/获取,或称为"发布后重定向".