basic login form works with validation