Have a dream
Incorrect : He saw a dream last night.
Correct : He had/dreamt a dream last night.
Note: Seeing a dream is not good idiomatic English. But this expression is often seen now-a-days.
Watch video to know: Shipwreck more tragic than Titanic https://youtu.be/7IVaHgxHU20