Ciao, ho una amministrazione di un sito dove accedono più amministratori.
Spesso capita che entrambi modifichino la stessa news piuttosto che lo stesso prodotto.
Il problema è che se utente1 e utente2 contemporaneamente aprono la pagina modifica.php?news=87 (ad esempio), entrambi vedranno il contenuto della news.
Ognuno modifica i dati a piacimento e poi utente1 clicca su modifica. Poco dopo clicca su modifica anche utente2 "perdendo" - in quanto subito sovrascritto nel db - il lavoro fatto da utente1.
Vorrei trovare una soluzione in modo che quando utente1 accede alla pagina modifica.php?news=87 "BLOCCHI" il record in modo che ad utente2 venga mostrato un messaggo che indica che utente1 sta modificando il record e finchè non avrà finito, lui (utente2) non potrà entrare nella pagina per modificarlo.
SOLUZIONE:
ho pensato: appena utente1 preme sul link che porta a modifica.php?nes=87, nel record di quella news metto il codice dell'utente 1 nel campo "utente_blocco_record". Poi quando premerà modifica, aggiornerò i campi e setterò a 0 il campo "utente_blocco_record". Fino a qua tutto bene, ma l'utente1 potrebbe entrare nella pagina bloccando il record e uscirne cliccando su qualche menu, pertanto io dovrei sbloccare il record della news non appena l'utente1 se ne va da quella pagina modifica.php?news=87 sia premendo il tasto "modifica" sia cliccando da qualsiasi altra parte piuttosto che chiudendo il browser.
Come posso fare per intercettare questo evento e agire di conseguenza?
con window.close() di javascript?
Grazie
Ciao