rapmonkey wrote:the ampersand IS escaped, being submitted as "&"
But that's not the proper way to encode an ampersand in POST'ed data! An ampersand separates POST'ed data in the string, so by trying to avoid the '&' breaking your data, you're trying to rewrite it as '&' ... but notice, you still have an ampersand in there?
You were right in thinking it had to be encoded... you just weren't encoding it in the correct way. To encode data properly for POST strings, you need to encode them as '%xx' where xx are hex digits. For example, an ampersand is properly encoded as '%26'. In PHP, this is done with the [man]urlencode/man function. I can't remember the JS function off the top of my head... is it possibly encode() ?
EDIT: Drats, I was close... it's the escape() function in Javascript.
EDIT2: I saw you were searching the board for applicable keywords relating to your problem... just thought it was nice to see posters doing research on their problems instead of just pleading for help 🙂