What is the difference between "varchar" and "text" in mysql?
Which one can contain longer message?
I think you'll find more information about this at http://www.mysql.com.
To answer your second question: "text" can contain longer messages
With varchar you can set the length between 1 and 255 characters, while in text the lenght is set to 65,535. An index can be created on the first 255 characters of a text field.
Text and Varchar only differ in the size they can contain!