Ну так значит по каким-то причинам этот цикл не работает. Например, запрос завершился ошибкой, или таблица в БД пустая.
В любой непонятной ситуации надо выводить/логировать всё или пользоваться отладчиком.
Выведите для начала переменную $result куда-нибудь (var_dump, …).
Еще надо отделять вывод HTML от всего остального типа работы с БД. https://phptherightway.com/#templating
В идеале должен быть файл-шаблон (либо тоже PHP, либо сторонние шаблонизаторы типа Blade, Twig), которому просто передаются данные.
Ну или тут хотя бы просто в самом начале прочитайте данные из БД в массив и потом выводите его, тогда и отлаживать проще будет.