[eluser]WanWizard[/eluser]
You can't do it that way.
Your gifts_users table is the junction (or relationship) table between gifts and users, containing the foreign keys to link the two. From this it follows that the combination of both foreign keys has to be unique. Which means you can't insert a second record with the same keypair, it would break your database design.
From a database normalisation point of view, this will mean you'll have remove the date from the gifts_users table, and store it in a separate table, and create a one-to-many between gifts_users and giftuserdate (or something else).
Now, this structure will create some challenges, as it means you can't use a many-to-many relation between gifts and users anymore, but you'll have to create a model for gifts_users, and create a one-to-many between gifts_users_ and gifts, and between gifts_users_ and users. Now you can create a new relation between gifts_users_ and the new giftuserdate model.
This is possible, but it requires some work, and will require changes to your controller code as queries will change.
Alternatively, if the date is only a display item, you could work around it by storing the dates into an array, and serialize it when you store it in the join field. Or use some other trick to store multiple dates in a single field.