AJAX - timed mySQL Abfragen (bitte warten Bildschirm)
-
05-07-2019 - |
Frage
Ich muß eine AJAX-Seite machen, die die Datenbank beim Laden der Seite abfragt und dann alle 5-10 Sekunden danach. In der Zwischenzeit werde ich eine Art Warte Seite (zum Beispiel mit einem animierten Gif meiner Kunden zu unterhalten :))
Ich arbeite mit paypals IPN so für seine während ich für die Transaktion am waiting .. die meiste Zeit zu löschen, bevor der Benutzer kehrt löscht, aber manchmal ist es nicht. Also wenn jemand einen solchen Code hat oder mich in die Richtung eines solchen Codes zeigen könnte, das wäre toll.
Lösung 2
Für alle anderen der Suche nach einem ‚Bitte warten‘ Skript - Dieses ist ein ausgezeichneter Ausgangspunkt:
Alles, was ich tun musste, war ersetzen
document.getElementById(divid).innerHTML=xmlHttp.responseText;
Mit:
switch(xmlHttp.responseText)
{
case '0':
document.getElementById(divid).innerHTML='<img src="wait.gif" />';
break;
case '1':
location.href="http://www.google.com";
break;
case '-1':
document.getElementById(divid).innerHTML='ERROR: Your transaction failed, please contact us';
break;
}
Und dann in boo.php
Ich habe es meine IPN Statusspalte abfragen.
Hope, das hilft jemand anderes.
Andere Tipps
http://www.w3schools.com/js/js_timing.asp (Hier können Sie etwas in X Sekunden zu tun) http://docs.jquery.com/Ajax/jQuery.get (Ist ein AJAX Anfrage)
Verwenden Sie setTimeout und jQuery bekommen Ihr Skript abzufragen. Lassen Sie das Skript mit dem Status der IPN-Anfrage antworten. Verwenden Sie jQuery bekommen das Skript Antwort zu analysieren und herauszufinden, ob Sie sollten eine Warte Bild oder dem Benutzer erklären, alles zeigen, dass es erfolgreich war.
Hoffentlich werden Sie in die richtige Richtung zeigen.