U moet een LOCKDATE- en LOCKWHO-veld in uw tabel implementeren. Ik heb dat in veel toepassingen buiten PHP/Mysql gedaan en het is altijd op dezelfde manier.
De vergrendeling wordt beëindigd wanneer de TTL is verstreken, dus u kunt de datums aftrekken met NU en LOCKDATE om te zien of het object langer dan 30 minuten of 1 uur is vergrendeld, zoals u wilt.
Een andere factor is om te overwegen of de huidige gebruiker degene is die het object vergrendelt. Dus daarom heb je ook een LOCKWHO nodig. Dit kan een user_id uit uw database zijn, een session_id uit PHP. Maar houd het bij iets dat een gebruiker identificeert, een IP-adres is geen goede manier om het te doen.
Denk ten slotte altijd aan een functie voor massa-ontgrendeling die eenvoudig alle LOCKDATE's en LOCKWHO's reset...
Proost