The first question is pretty basic. You need an external redirect from the 'ugly' (but working) url to the seo url and an internal rewrite from the seo url to the 'ugly' url. They can all be written in the following format:
#External redirect
RewriteCond %{THE_REQUEST} ^(GET|POST)\ /forums/view\.php\?v=([^&]+)&a=(.+)\ HTTP
RewriteRule ^ /forums/view/%1/%2 [R,L]
#Change above [R,L] to [R=301,L] after testing all rules work as expected
#Internal rewrite
RewriteRule ^forums/view/([^/]+)/([^/]+)/?$ /forums/view.php?v=$1&a=$2 [L]
The second thing is not possible. There is no way to distinguish between the dash between Hi
and There
and the dash between There
and Bye
. I would say: Don't bother. It's a seo-url. If you want to have fancy seo-url's, you'll have to alter your database to contain those fancy seo-urls.