Witam,
Sprawa jest prosta. Po klauzuli WHERE w kwerendzie SQL nie używamy zmiennych. Zamiast zmiennej $data podaj nazwę kolumny z bazy danych. Przykład:
Mamy tabelę o nazwie "kalendarz". W tej tabeli są kolumny id oraz data. Ustawiamy wartość w kolumnie data na 2019-01-01. I teraz wykonujemy kwerendę
SELECT * FROM `kalendarz` WHERE data > CURDATE()
Powinno zwrócić te wszystkie kolumny, w których ustawiłeś datę większą niż jest dzisiaj.
Pozdrawiam!