Thanks for the list of things to instigate. I will replay with my actions on each:
Incorrect credentials: Ensure you're entering the correct username and password. Check for any typos or capitalization errors.
I have verified this by trying both with correct and incorrect passwords.
When I use a correct password I can see the record in the user table is updated with last login date time. When I use the wrong credentials it is not. This leads me to conclude that this isn't the cause.
Database connection issues: Verify that your XAMPP installation is properly configured and the database is running correctly. Check the XAMPP control panel to ensure MySQL/MariaDB is running.
As I can see the login field updated in the database then I am assuming the database connection is working
Code errors: Review the login form code for any errors or inconsistencies. Check for missing or incorrect variables, database queries, or session handling.
I have used browser tools to look at the console log and no errors are appearing. I have also looked at network activity and I do not see any failed network calls. Instead I see the POST request to login which gets a 200 response then the page is immediately bounced back to the login
Also I have made no code changes to any part of the system at all. I am sure the login screen is working for others so it is not likely to be a coding error. - It feels like this response was written by some kind of computer system pretending to be intelligent but which in reality doesn't understand the question.
CSRF protection: Check if CSRF (Cross-Site Request Forgery) protection is enabled in your application. If so, make sure the CSRF token is properly generated and included in the login form submission.
I have seen these errors before. They appear in the browser tools console and they are not appearing
Session issues: Verify that session handling is working correctly. Check if sessions are being started and stored properly.
Not sure what this means in context of my question
Permissions: Ensure the web server has the necessary permissions to access the database and write to session files.
The web browser doesn't access the database. It calls the backend server which accesses the database.
Browser cache: Try clearing your browser's cache and cookies to eliminate any cached data that might be causing the issue.
I have tried this. Both clearing the cache and using an incognito window
Third-party plugins or extensions: Disable any third-party plugins or extensions that might be interfering with the login process.
I have no third party plugins or extensions
Server logs: Check the server logs for any error messages related to the login process. This might provide more clues about the root cause of the issue.
I have checked the php-fpm log and the stdout of the conatiner and no errors are appearing
Testing with a different browser: Try logging in using a different web browser to rule out any browser-specific compatibility issues.
I have tested with firefox.