Progress bar
Een plug & play progress balk waarmee je gemakkelijk de voortgang van je bijna eeuwig durende lusjes kunt aangeven, zodat het wachten wat leuker wordt.
Voorbeelden van gebruik
- een importeer-scriptje dat binnen een lus een trage actie doet, bijvoorbeeld een query of het downloaden van een bestand.
Enige eis is dat je weet hoeveel rondjes (hoeveel ticks) je de progress bar laat meten.
Gebruik
1. Roep de static IHG_Progressbar::draw_css() aan waar je je css hebt staan. Of je maakt een eigen stylesheet. Let wel dat je dit echo't voordat je de progress bar gaat gebruiken.
2. Maak een nieuwe instantie van IHG_Progressbar aan. Argumenten zijn het aantal ticks dat je gaat geven (wanneer je zoveel ticks hebt gegeven, is je balk vol) en wat er op de balk weergegeven moet worden. Voor dit formaat wordt sprintf gebruikt, dus je kan gewoon %d gebruiken als placeholder voor de cijfertjes. Hij vult twee cijfertjes in, de tick bij welke hij nu is, en het maximum aantal ticks.
3. Roep IHG_Progressbar::draw() aan om de balk zelf op het scherm te toveren.
4. Roep ieder rondje in je lus IHG_Progessbar::tick() aan. Op dit moment wordt er wat javascript geprint waarmee de balk een stapje vooruit gaat. En om ervoor te zorgen dat hij werkelijk door de browser ontvangen wordt flusht hij alle output buffers.
Ik heb hem in een klasse gezet om hem zo plug & play mogelijk te houden. Gewoon klasse kopiëren en gebruiken. Ik heb hem zelf gebruikt voor een import-scriptje voor Wordpress. Als het goed is kan je meerdere balken tegelijkertijd gebruiken, al heb ik dat niet getest.
Voorbeeld: http://phphulp.ikhoefgeen.nl/progress.php
Gesponsorde koppelingen
PHP script bestanden
Er zijn 24 reacties op 'Progress bar'
Om te reageren heb je een account nodig en je moet ingelogd zijn.
PHP hulp
0 seconden vanaf nu