the mechanism in the slam panel might have closed and is not accepting the bonnet catch. Happened to me twice, get a screwdriver and fiddle about in the catch housed in the slam panel and provided nothings broken or seized you should be able to free it up. Then give it a good clean with wd40, then use some white grease to hopefuly avoid it happening again, worse case your need a new catch common problem I'm afraid.