You are welcome to answer questions posted in the Ask a Teacher forum as long as your suggestions, help, and advice reflect a good understanding of the English language. If you are not a teacher, you will need to state that clearly at the top of your post. Please note, all posts are moderated by our in-house language experts, so make sure your suggestions, help, and advice house the kind of information an international language teacher would offer. If not, and your posts do not contribute to the topic in a positive way, they will be subject to deletion.
The difference is we don't use the present simple to discuss lengths of time.
We can of course say,
"I have a cold"
because the present simple describes a state, and these states are thought of in English as "timeless". When we want to discuss the amount of time, the length of time that something has been going on, we use present perfect.
I live in Bangkok. I've lived there for 3 years.
What is the active voice of
Smoking has been shown to be dangerous for peoples health
Though we can put the sentence above in the active voice, it wouldn't [necessarily] be that natural. For one thing, I don't know for sure who the subject would be.
Scientists/Researchers/People/Doctors/Health care professionals have shown that smoking is dangerous to peoples' health.
Riverkid is (as usual) correct. The smoking sentence is not passive voice. In the passive voice, the subject is moved to a prepositional phrase (usually) at the end of the sentence.