В форме регистрации нет фазы выдачи ранее сохраненных данных, форма заведомо пустая, поэтому все начинается с проверки данных от клиента.
function run()
if(!empty($_POST))
{
// валидация, сохранение, редирект или exception
}
// catch block
// рендер сообщения об ошибке
// рендер формы
}