There's no good solution IMO. There's a way to game everything. Ultimately it boils down to: You don't want hefty people fighting little people. A 24 hour weigh in causes a small number of folks to go to extremes and a weigh in just before fighting could have someone fighting dehydrated.
Nearly everyone runs a 6 or 8 week run up to a fight where they're constantly losing weight. For me it was pure numbers. e.g. I'm 7KG over fighting weight with 6 weeks to go. It's a 1000 calorie a day deficit with maintenance days here and there and shift 2 - 2.5 by making weight.
You've 24 hours to rehydrate and it's enough IMO.
The trouble comes when you've lads trying to shift 5KG in 48 hours. It causes death. Maybe a weigh in 3 days out then another with 24 hours to go would work. Tough nut to crack though.