Both are correct grammatically, as far as I know! The meaning is only slightly different, and you might find that in most cases it doesn't matter very much. I think, usually, if you use the present perfect, you are emphasizing the fact that you have done something at some time in your life, but you are not specifying the exact time when it happened. Like: "Have you ever told someone you love them? Yes, I have said it, once." But if you want to tell a story about the time you did do something, then maybe just straight past is better: "Tell me about a time you told someone you loved them! Well, I said it once to this girl I met the summer I went to Europe..." So, it really depends on the situation, and there are probably more ways to think about it than I have just said!
HTH!