preloader ähnlich wie hier bei der suchfunktion

methodus

Erfahrenes Mitglied
ok, gleich zum problem, ich hab ne messagebox, die auf mysql basiert. wenn man die box lädt dauert es gute 5 - 10 sekunden bis sie geladen ist. wie kann ich das umgehen, dass diese zeit ne weiße seite angezeigt wird? ich hab mal etwas rumgesucht, aber bisher nur alles auf javascriptbasis gefunden, das funzt aber nur mit bildern, ich hab aber keine bilder sondern nur die einträge.

danke für die hilfe
 
wie langsam ist deine datenbank, wenn es so lange dauert?
oder ist dein server einfach so langsam?

du könntest alles in eine tabelle setzen und den hintergrund mit einer "wird geladen" grafik füllen. Dann bastelst du darauf die Einträge mit einer hintergrundfarbe.

Zeig einfach ein beispiel.
 
hier im Board wird man einfach auf eine Seite weitergeleitet die dich darufhin zu den Suchergebnissen bringt...
also so:
seite zum suchen->weiterleitung auf die seite mit dem text"Ihre Suche wird bearbeitet" (dort ist ein Meta Tag der dich sofort wieder weiterleitet,dauert dann halt nur ein bissel)->suchergebnisse
 
*kopfkratz* das heißt also, dieses bitte warten ist gar nicht auf die geschwindigkeit und anzal der suchergebnisse angepasst, sondern nur fake? irgendwie muss man das doch mit php lösen können oder?
 
jup...
es dauert dann halt nur ein bisschen bis die Seite geladen ist und der Browser sie anzeigt...
du kannst ja mal in den Source der WeiterleitungsSeite gucken ;)
 
So, ich hatte zu dem Problem grade einen Geistesblitz und hab das ganze mit SelfHTML an meiner Seite folgendermaßen gelöst:

Es wird zuerst nicht die eigentliche Seite aufgerufen, sondern die Preloader-Seite, auf der steht, dass die Seite gerade geladen wird. Außerdem befindet sich auf dieser Seite ein unsichtbarer IFrame, in dem die eigentliche Seite geladen wird. Im body-Tag dieser Seite steht in der onLoad-Eigenschaft ein Befehl, der im Parentdokument (die Preloader-Seite) den Quelltext des IFrames ausgibt und die Preloader-Nachricht überschreibt. Et voilá, fertig ist der Preloader für ganze HTML-Seiten.

Nachteil: Funzt nur beim IE :(

Hier mal der Quellcode von zwei Beispielseiten:

Preloader:
PHP:
<html>
<head><title>Bitte warten...</title></head>
<body>
<p>Seite wird geladen...</p>
<br />
<iframe src="hier url der seite eingeben" style="display:none;" />
</body>
</html>

Eigentliche Seite:
PHP:
<html>
[...]
<body onLoad="parent.document.write(document.all.tags('html')[0].outerHTML);">
[...]
</body>
</html>


HTH
 
Zuletzt bearbeitet:
coole sache, naja 80% aller user nehmen den IE und da netscape eh das letzte ist muss man darüber nicht weiter reden!

mega thx für dieses script!
 
Zurück