The way we got round this problem was to set an in-use date-time stampon the record, which is set when a visitor views a page for updating. If he updates it and properly navigates to another page, the stamp is set to zero, if he uses the back button, closes the brpwser or simply leaves the page...