Avatar billede kjeldsted Novice
20. februar 2008 - 13:21 Der er 8 kommentarer og
1 løsning

onUnLoad firefox/opera/safari

Hej Alle.

Jeg har en side som skal udføre en PHP funktion når brugeren forlader siden. Jeg havde tænkt at lave dette vha. javascript funktionen onUnload så mit bodytag altså ser sådan ud: <body onUnload="luk_vindue()">.

Jeg kan dog ikke få dette til at virke i firefox og opera. Er der noget jeg kan gøre for at dette vil virke?

På forhånd tak.
Avatar billede olebole Juniormester
20. februar 2008 - 16:37 #1
<ole>

Nu fortæller du ikke noget om, hvad du forsøger at gøre på onunload, men det er yderst sjældent, du kan nå noget særligt - f.eks. vil du generelt have svært ved at nå at kalde et dokument. Visse browsere understøtter 'onbeforeunload', og med den kan du nå betydeligt mere, før siden er væk ... men den er som sagt ikke understøttet i alle browsere

/mvh
</bole>
Avatar billede kjeldsted Novice
20. februar 2008 - 17:22 #2
Glemte helt at skrive funktionen ned også. Men funktionen ser sådan ud:

<script type="text/javascript">
function logout()
  {
  open('edit_close.php?id=<?=$id?>');
  self.close();
  }
</script>

Så det er jo ikke den helt vilde funktion den skal nå at udføre.
Avatar billede kjeldsted Novice
20. februar 2008 - 17:34 #3
Men er der ellers en anden måde hvor det vil være muligt for mig at udfører en funktion når en person lukker et vindue? edit_close.php, som man i oversnående kode skulle vidresendes til indeholder en PHP funktion der registrere at man er færdig med at redigere i dokumentet og at en anden bruger kan redigere det.

Grundlæggende skal funktionen forhindre to brugere i at redigere det samme dokument samtidig.
Avatar billede olebole Juniormester
20. februar 2008 - 21:22 #4
Så skal du en anden vej rundt. Dokumentet skal i stedet låses, når en bruger påbegynder en editerings session:
    http://dk2.php.net/manual/en/function.flock.php
Avatar billede kjeldsted Novice
21. februar 2008 - 14:21 #5
Øh. Kan denne funktion også bruges i forbindelde med en MySQL database? Det er en række i en MySQL database der skal "låses"?
Avatar billede kjeldsted Novice
21. februar 2008 - 16:26 #6
Hm... Nå nu virker min JS version alligevel. Har vist fjernet et enkelt if/else statment, samt slået blokering af popup vinduer fra. Så ingen problemer længere.
Avatar billede kjeldsted Novice
21. februar 2008 - 16:28 #7
Men desuden, mange mange tak for dine forslag. Dejligt du gad hjælpe :-)
Avatar billede olebole Juniormester
21. februar 2008 - 20:32 #8
Jamen, dine brugere vil jo ikke slå blokeringen fra  =)
Avatar billede kjeldsted Novice
21. februar 2008 - 20:44 #9
Æh... Som det er nu så virker det. Det der sker i edit_close.php er at den "låser den pågældende række op", så andre kan redigere i denne.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester