Перенаправление браузера пользователя, как вы делаете сейчас, на самом деле является единственно возможной клиентской стороной с Javascript, который всегда может быть заблокирован. Вы можете сохранить user_id и пароль в переменной сеанса и получить доступ к этим данным на странице входа в систему, которая обрабатывает фактическую аутентификацию. Такое действие устранит необходимость автоматической отправки форм.
Но если вы действительно хотите использовать публикацию формы, вы можете эмулировать публикацию формы с помощью PHP, используя cURL, но это немного сложнее.
cURL на php.net
Отправка данных в форме сообщений с помощью PHP и cURL
На моем сайте, если пользователь не вошел в систему, я запускаю метод «tryCookieAuthentication» при каждой загрузке страницы, который проверяет, установлен ли файл cookie «запомнить меня». Если он установлен и все кажется законным, я продолжаю аутентифицировать пользователя и входить в него. Таким образом, пользователю даже не нужно прикасаться к странице входа. Я не знаю, пытаетесь ли вы это сделать, но это может дать вам представление.