$_POST["name"] is more secure. if you have your variables being automatically mapped then $name could be either a POST var, and GET var, a COOKIE var, or a SESSION var and you don't know where it came from.
This can cause you problems like if you have a var named $admin that you set in a session after you've logged in, and then check to see if you should show an admin menu. So if you were just checking $admin and not $_SESS["admin"] a user could call your page with ?admin=1 added to the end of the URL (or something like that, and possibly get access to your administration tools.
The best practice is to always use $_ variables so that you know you exactly what you are looking for/at.