I am curious as to whether websites actually somehow store the agreement a user makes when clicking through the terms and conditions. This way there is no way they could deny agreeing right, should something go wrong? I want to implement this into my site but I want to do it the right way, so I am asking once again, when a visitor clicks on the "agree" button is this being recorded somewhere or do you just redirect them to a new page?
I feel this way would be good for both me and my visitors because this way should I change the terms and conditions without letting the visitor know it will show which they agreed to etc. I am just basically doing this to gain trust from my visitors as a reputable company.
I typically do store this.
One thing to consider is that terms sometimes change.
We typically implement a system part of the account creation and login process that checks what terms of service / when the user agreed to it and if they haven't agreed to any or the latest it prompts it up for them to accept before proceeding.
This is then saved with the users id, date they agreed, and what TOS they agreed to. We also typically log the IP address.
You could easily store their click in a database, for example, with their username or some other way of identifying them - if you want general surfers to do this then you may struggle as there is no way of proving that any individual did agree even if you were to track IP addresses etc
On the other hand, if you are referencing users as in those who signup/login then you can use their username along with IP address maybe plus date & time - in our B2B app we have a tick box which says "I agree to Terms and Conditions" with a link to our terms and conditions and user cannot sign up without agreeing. Whether the actually read them or not remains to be seen but you can only lead a horse to water.....
You can simply build the functionality of showing an error each time a user is not agreeing with the terms.
If a user is in a members-only section, it means that the user already agreed with the terms.
Then you'll note a version for your Terms and Conditions agreement and the date when the user registered. Your agreement can have revisions (e.g. git) and you can match exactly which agreement a user agreed on based on its registration date.
In general you should notify users of any T&C updates either by a simple notification or having a checkbox to agree to the new terms to continue using your website.