I learned PHP as I was developing a very extensive script. When something worked on the development server, I assumed it worked and continued on. I learned late in the game that not all servers will pass posted form values to the php variable without using code such as:
$_POST['thevalue'] (in place of $thevalue)
or $thevalue = $_POST['thevalue']; (once at the beginning)
For me, $login and $password alone work fine, but some people who try my script on their server can't login unless they add:
$login = $POST['login'];
$password = $POST['password'];
at the top of the login processing script.
I know it was a rookie mistake, but I have to wonder (as I'm re-writing many files) why this happens on some servers and not others. I know POST data is carried in html headers & I have examined the result of phpinfo for some obvoius setting on my server, but it escapes me. Can anyone tell me why this happens on some servers and not others?