I've figured out the problem!! By accident! I've constructed this circuit on breadboard by the way. In my code, when rb6 (or 4 cant remember) goes high due to user input, the message is transmitted.
Because the message is transmitted so fast, once it has finished, the user is still actually holding down the button, although it only feels like you've only done one "click" of the button which seems to us as a fraction of a second.
I noticed this because I had a wire coming out from rb6, and i noticed whenever i touched it with my fingers, it would display
santasantasantasantasantasantasantasantasantasantasantasanta
due to the pin going high, im guessing the electricity from my own body?? Is this possible? This actually was happening though, when I let go, i noticed it stopped. Maybe it could have been some built up charge in the breadboard or something?? Who knows..
To over come this, i inserted a delay routine into my code, so that when the user presses a button, the message is sent, then a delay is called, to give the user a chance to "let go of" the button, or else the message will be written again.