[php]commando uitvoeren na een scherm vervesing

Pagina: 1
Acties:

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Ik wil php een aantal commando's uit laten voeren en daar dan een aantal vars aan meegeven.
dat is geen probleem
ik gebruik een invoer veld en een submit buttom.
alleen het commando uitvoeren duurt een seconde of 30,
nu kan je in die 30 seconde nog een aantal keer op submit drukken, dan krijg je netjes een foutmelding te zien maar je ziet niet meer of het 1e commando wat je afschoot nou gelukt is of die een error gaf.

is het mogenlijk of vantevoren een legen pagina te laden of om de submit buttom te disabelen??

specs : http://specs.tweak.to/7435


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 15:43
Met behulp van JavaScript kun je de submit-knop wel disablen nadat er op geklikt wordt, lijkt me (maar pin me er niet op vast, ik ben geen kenner). Met behulp van PHP natuurlijk niet.

Een aardige oplossing zou zijn om met je PHP script direct een deel van de uitvoer te genereren (voordat je je langdurige operatie gaat uitvoeren dus), zodat de browser de oude pagina zo snel mogelijk weghaalt en vervangt door het (deel) van de nieuwe pagina. Dit garandeert natuurlijk niets, maar het voorkomt in veel gevallen wel dat de gebruiker meerdere keren gaat klikken omdat 't hem(/haar) te lang duurt, want de submit-knop is dan verdwenen en de gebruiker moet expliciet op back klikken om opnieuw te kunnen submitten.

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Ik laat php dus bijv. helemaal aan het begin starting printen op het scherm, maar php heeft dus de "vervelende" eigenschap om eerst heel de pagina te laden voor dat hij wat op het scherm print.

specs : http://specs.tweak.to/7435


Verwijderd

Header(Location: vervolg.php?blaat=$bllat&bagger=$pruttel)

zou ook moeten werken.

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Op maandag 03 juni 2002 16:26 schreef Devinity het volgende:
Header(Location: vervolg.php?blaat=$bllat&bagger=$pruttel)

zou ook moeten werken.
helaas hij blijft gewoon netjes w88 tot dat hij klaar is met het commando
code:
1
    Header("Location: submit.php?action=post&project=$project");

specs : http://specs.tweak.to/7435


  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 02-09 19:44

Gerco

Professional Newbie

flush() je uitvoer eens nadat je iets geprint hebt. Garandeert nog steeds vrij weinig, maar de kand dat je suc6 hebt is iets groter.

Als je gzip uitvoer (buffering) gebruikt, dan gaat zoiets niet lukken en kun je beter een "tussenpagina" gebruiken (gewoon een bijna lege page die met een http-equiv=refresh je langdurige operatie start).

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
tis nu gelukt met een tussen pagina

allemaal bedankt voor de hulp

specs : http://specs.tweak.to/7435


  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 06-09 21:14

TheDane

1.618

Op maandag 03 juni 2002 17:06 schreef dafearless het volgende:
tis nu gelukt met een tussen pagina

allemaal bedankt voor de hulp
en als je die tussenpagina nou net ververst ?

volgens mij zit je dan met 'tzelfde probleem.

volgens mij kun je 't wel afvangen met een sessievariabele.
daarmee kun je checken of er vanaf dezelfde client binnen een bepaalde tijd steeds 'tzelfde gepost wordt. als dat zo is -> transactie afbreken.
Pagina: 1