Alright, I figured out what it was, but now I have to understand why.
The websites in IIS use a rather restricted user by default for anonymous access, usually just a guest internet account. Now, I changed this account to an administrator account on my PHP website, and voila, stars align, angels sing and PHP can once again access the database.
The question is, why, when using sql authentication, am I unable to connect to a database with the generic user, but works perfectly with the administrative user? Obviously, I wish to restrict permissions as much as possible to limit security vulnerabilities, so having an administrative user attached to the website isn't going to cut it.
Presumably, there is some magic permission or setting somewhere that needs to be set, or perhaps the base guest users aren't allowed to connect to other machines? Any Win2k3/IIS gurus out there know? I'm out of my element, I just recently swapped from Apache/PHP to IIS to guage the performance and installation differences.
Here is a pre-emptive thanks for all the kind replies. Thanks!