在 运行 一个 PHP 脚本时显示加载符号

Show a loading symbol whilst running a PHP script

我在我的网站上创建了一个注册页面,用户可以在其中输入他们的详细信息并单击一个按钮,然后进行一些单词检查、发送电子邮件、将信息插入 MySQL 数据库,最后结束使用 die() 语句。

唯一的问题是此过程最多可能需要 30 秒,具体取决于客户端的网速。这意味着注册页面会显示很长时间,这会让技术不太精通的用户(甚至是非常精通技术的用户!)认为该页面已损坏,从而导致他们关闭网站永远不会回来!

所以我需要一个解决方案,我认为让用户留在网站上的最简单方法是显示一个加载符号,说明它正在工作以及还剩多长时间。尽管浏览器选项卡中有一个 URL 加载符号,但它移动缓慢,根本没有多少人看到它。

基本上,我要求一种在脚本运行时显示加载符号的方法,然后在到达 die() 语句后消失。我不介意它是用哪种语言编写的,但更喜欢 PHP.

提前致谢

实现此目的最简单的方法是使用一些 JavaScript 将事件侦听器附加到表单的 submit 事件,然后显示一些消息/加载图标/其中的内容事件侦听器方法。

一个简单的例子(但还有许多其他方法):

...
<form ... onsubmit="showLoadingMessage();" ...>
...

<script>
function showLoadingMessage() {
  var message = document.createElement('div');
  message.innerHTML = 'We are working. Please wait...';
  document.body.appendChild(message);
}
</script>

当然,您可以显示任何其他内容而不是简单的文本消息,并且可以附加或放置该消息 div 您想要的位置。