I reread your post. I think I understand it now. All of those are fields in your table?
I'm assuming it is how you are using ADDDATE(). For the interval type you are inserting a VARCHAR where it is expecting a built-in keyword. I'm assuming that is where the trouble is coming in. I'd assume that sticking in a VARCHAR won't work, but feel free to correct me. What you're doing is essentially: