2016-12-31 52 views
0

我建立了自己的網站,供用戶輸入他們的詳細信息,然後點擊一個按鈕,然後做一些字檢查一個會員註冊頁面,發送電子郵件,插入信息到一個MySQL數據庫最後以die()聲明結尾。顯示加載符號,同時運行PHP腳本

唯一的問題是,這個過程可能需要長達30秒,這取決於客戶端的上網速度。這意味着,新會員註冊頁面顯示的很長一段時間這將使一個不太精通技術的用戶(甚至是非常精通技術的用戶!)認爲頁面被打破,這將導致他們倒閉的網站永遠不會回來!

所以我需要一個解決方案,我想保持一個用戶在網站上的最簡單的方法是顯示加載符號地說,它的工作多久就走了。儘管瀏覽器標籤中有一個URL加載符號,但它移動緩慢,並且很多人確實看不到它。

基本上我要求一種方法來顯示腳本運行時的加載符號,然後一旦達到die()聲明就消失。我不介意用哪種語言編寫,但更喜歡PHP。

在此先感謝

+0

你必須明白,php:php在服務器上回應內容 - >你的瀏覽器加載了這個內容 - >如果加載的內容,你的瀏覽器認爲!而瀏覽器的加載時間不會顯示任何內容或部分內容。你需要使用額外的PHP js。 – Eugen

回答

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哪裏你想要。