Unlike everyone else, I think I'd make a point of shaming them for not paying, why do so many people think it's OK to go around using other people's money, and not paying it back at the earliest opportunity?
In a situation like this, if I was working in an office for example, I would wait until the guilty party walked by my desk and call out 'Sue, am I right in thinking you've forgotten you still owe me the £15 for 'X's' gift?' She'll probably say 'OMG, I'm so sorry, I completely forgot'. At which point, just make a joke and say, don't worry, I take cash, or you can pop it straight into my account if you prefer, here are the details'. Then repeat the process with the other one. That way, other people know they're not good at paying up, whether innocently or not. If they don't then pay swiftly, I'd bring it up in front of the rest of the office again, and say 'Sue, you do realise you still haven't paid the £15 you owe me, have I got to send in the heavies to make you cough up, or what? Giving a little laugh as you say it, so that it doesn't make you look like a complete bitch for asking for what is rightly yours. If anyone says something like 'it's only £15 surely it's hardly worth making a song and dance about?' I'd answer that with, 'it may only be £15 to you, but if all of those who agreed to contribute did the same, I would be out of pocket by £120, not quite so small an amount then, is it?'
As you can probably tell, I've had my fingers burned like this before, and even if it's only the principle that makes you chase them, and not that you actually need the money, they should still be ashamed for not paying up, otherwise these people will continue to treat other's money as their own personal piggy bank.