$gnt = date("Y-m-d H:i:s");

birde sql de neden 2 kere sorgulattınız aynı sorguyu ?

('$gnt' between begintime and endtime) or ('$gnt' between begintime and endtime)

ayırca veritabanında begintime ve endtime veritipleri ne? INT mi DATETIME mı?