Hi @cy2
The best approach without a doubt is using a database.
You will need to build a protected area, where they log in and insert, update or delete data from the database. This data populates your dynamic pages on the front-end of the site
You can take a look at the tutorials explaining how to insert, update or delete data:
https://docs.wappler.io/t/server-connect-introduction/2835
And also how to protect pages and setup login for your users:
https://docs.wappler.io/t/security-and-login/2836