I have an interesting situation that I just can't figure out how to design in a good way that will use the system efficiently.. maybe you can? It's a though nut to crack..

The situation is this:

I have a text box (php page), where users can enter a string and it will search the DB for matches of the string.

I have a table in the DB called searchResults. Looking like this:

searchResults
id nr text
1 1 Pear
2 2 Europe
3 3 Computer
4 4 Balloon
5 5 Car
6 6 Fish

Results are shows as, after a search: "2 - Europe"

Now.. the tricky part, each individual user on the site.. 100s of them.. should be able to modify theese search results individually. Ie change the "nr" and / or "text". If a user makes a change it should only be visible to themselves, for the other users, unless they change something, it should look like the above example still. Also they can add more rows and / or delete existing ones.

I do not want to duplicate the base template of rows for each user, in the example above it's only 6 rows but in reality it's about 2000 template rows in the live system.

Any ideas on how to design this? Any help is much appreciated.