My target: I'm new to the blockchain concept as well as Ethereum and trying to develop a web-app which allows the user to upload some data (let's say contact numbers) and also manipulate it at a later stage. The way I approached this when writing a contract is that a user deploys a contract and with this his Ethereum address is stored in the contract. Now whenever he wants he can add contact numbers to this contract through provided functions. The functions checks if the message to manipulate is coming from the contract owner and then only allows it. Also tested it on the embark simulator(RPC).
Doubt: What I don't understand is once the user had deployed his contract and added some contact numbers. Later when he wants to add more contacts numbers to the contract how will his messages go to his and only his contract i.e how to make sure that at a later point the user is making calls to his contract and not others'. I did got something about how there's contract address which points to the contract. I'm wondering if I don't even need to bother about this stuff and just make web3js calls to the contract and it will by itself make sure the calls are made to the user's contract and not others.
I searched the web for stuff on this but came up with nothing. Can someone please help me understand this part of the puzzle or at least provide links which can help?