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

时间:2016-12-31 12:08:40

标签: php mysql loading die

我在我的网站上创建了一个注册页面,用户可以在其中输入详细信息并单击按钮,然后执行一些单词检查,发送电子邮件,将信息插入MySQL数据库,最后以{{1}结束声明。

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

所以我需要一个解决方案,我认为在网站上保留用户的最简单方法是显示一个加载符号,表示它正在工作以及剩下多长时间。尽管浏览器标签中有一个URL加载符号,但移动速度很慢,根本没有人看到它。

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

提前致谢

1 个答案:

答案 0 :(得分:1)

实现此目的的最简单方法是使用一些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附加到或定位到您想要的位置。