No problem at all! You will get there for sure.
So… since your user workflow is option 2, you will need to have a way in the database to indicate that an item is no longer available. This way on a new page load/visit - only available options will appear.
You can do this in whatever way makes sense for your data but you will need a new column:
A boolean - if there is only 1 of each item this can work bc it’s true or false. Then in your dataset, make sure that you only load TRUE
A number - if there are multiple items you can decrease the count on each selection and only load items that are > 0
Text - You can create your own text that you use like “Available” / “Unavailable”. Similar to the boolean, but you can choose whatever you want for the filters
Then on your page, on select/submit make sure to modify the data in the database. (Set the boolean to false, decrease the count, etc)
Good luck and let up know how it’s going!