Permalänk
Medlem

Köra skript i bakgrunden

Ponera att jag har en knapp på min hemsida. När någon trycker på knappen ska servern skicka ut brev till 10000 personer eller något annat som tar lång tid.

Det jag vill är att när någon trycker på knappen, så ska skriptet startas, men att det ska köras oberoende av användaren.

1) Om användaren lämnar sidan innan skriptet har avslutats, så fortsätter det köras.
2) Användaren ska inte behöva vänta tills skriptet har avslutats för att få upp en statisk sida som är oberoende av resultatet i skriptet.

Någon som vet hur man gör?

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk
Medlem

Scriptet kommer alltid att avbrytas om användaren stänger ned sin webbläsare... men om du har tillgång till egen server finns det nog lösningar. En idé är ASP.NET och code-behind som startar upp en process på webbservern (System.Diagnostics.Process)

Permalänk

Först behöver vi nog veta vilket server-side script du kör, ASP eller PHP eller ?.

Eftersom du fått en möjlig lösning för ASP.NET... i PHP finns ignore_user_abort() funktionen (http://se2.php.net/ignore_user_abort) för att fortsätta köra ett skript även om användaren avbryter/stänger webb-läsaren. Om du då lägger koden i en egen fil skulle du kunna ladda den filen från sidan mj.a. AJAX eller Curl med kort timeout (länge nog för att starta skriptet).

Permalänk
Medlem

Jättebra att jag lyckades missa skriptspråket. PHP är det.

Det var också en fiffig lösning. Jag hittade en annan variant på nätet där man ur moderskriptet öppnade en socket till dotterskriptet och sedan stängde socketen.

I dotterskriptet hade man satt ignore_user_abort till true.

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost