A promise ring is usually given to indicate the intention that you intend to marry her, but just not now. This could be for a variety of reasons... work, career, school, lack of money... etc.
It means a lot more to give a ring, which has a traditional symbolic meaning. You asked "why not just tell her, I'm not going to cheat on you". Well, take a look at the forums here and see how many girls have been cheated on. I'll bet most of them have at some point. And I'll also bet that the guy probably told her he'd never cheat on her. Words a pretty much worthless in this day and age of society. I've had girl friends who've been cheated on 5-6 times.
I'm willing to bet that among all the relationships out there, more than half of the people in a relationship have ABSOLUTELY NO INTENTION of marrying their current boyfriend/girlfriend. I often dated girls that had crappy personalities only because they were super hot. I had no intention of marrying them either, and knew it wouldn't work out. But that didn't stop me from using them to relieve the pressure in my balls for a year or two.
For guys, the thought of purchasing a ring - even a promise ring - and giving it to a girl indicates that he's not just around for sex. I doubt a guy that's only around for sex would ever bother to get a promise ring. So receiving one is a sign of a serious intent. However, if the girl isn't actually that interested and receives one, she better get the hell out of that relationship fast.