WYSIWYG is an editor for generating HTML code. WYSIWYG stands for What You See Is What You Get. In such editors you see visual output and in backend you get HTML code for that.
One who is not familiar with HTML can use such editors to generate HTML code for the text. The editor interface gives similar interface to any office tool. i.e. word. It has some standard toolbar and button. Below is TinyMCE screenshot.
If you see above screen’s HTML output it will look like below.
Some famous sites using WYSIWYG editors:
Some open source WYSIWYG editors to use in projects:
TinyMCE: It is a very famous, easy to install open source WYSIWYG editor. It is used by WordPress as their editor. It has many versions as per your requirements. May be just lite version or higher version meets your requirement.
CKEditor: This one is also a famous WYSIWYG editor. I recently implemented it in my project and it took me less than 5 seconds to implement it. It also has multilingual editor including Indian language which I love and will implement it in regional projects.
Mainly such editors are used where HTML is to be stored in MySQL database.