If you haven't been with the girl that long and Valentines day comes up, what you do is as follows. a) Find some random small place on the map about half an hour or so away from where you live b) find something slightly interesting about that place such as a nice view, a nice beach, a nice walk or something c) tell your girl you would like her to come somewhere which is really important to you d) take her there, make up some bull**** story as to why it means to much to you and end with "so to me, this is the most beautiful place in the world, and I wanted you to see it...." Not only is this free but will melt any girls heart.
However, you have been with your girl long enough that she will see through such a cheap ruse. Taking her out for dinner is always good as if you pick a good restaurant it shows off how good your taste is. You dont have to bother about gifts I dont think except maybe flowers, you need to get a good gift for birthdays, but anniversaries and valentines it's more about taking them somewhere. But yeah, my advise would be take her on a trip, somewhere romantic and beautiful. If you've got the cash get a room there for the night. It will have to be somewhere you genuinely care about, unlike my suggestion above, or somewhere you have both never been. Take her to some village or small spanish town that you love, walk around, talk about how beautiful it is, buy her dinner in some "authentic" local eatery, get the last bus home or stay the night if you can afford it. And wake her with breakfast in bed which includes a fresh, chopped pineapple.