I'm so sorry - I've no idea how I missed that before!
Right, now your connection syntax should be as follows:
$link = mysql_connect('localhost', 'root', '********') or die ('Could not connect: ' . mysql_error());
i.e. leave out the '@localhost" bit.
MySQL permissions are specific to the host from which you're connectiing (and this is detected automatically), so you can only connect from localhost as root, if you have already given yourself this permission. The error you're seeing could be due to a permissions error, or it could be due to a non-listening MySQL server.
Double-check that the MySQL server is running. I'm assuming you didn't change the default port when you installed it. Ensure that your firewall is not blocking connections on that port (3306).
The MySQL installation on Windows comes with some GUI clients; you can try using them to connect to the server. You can also try the tests on
this page. I recommend bookmarking the MySQL reference pages, if you haven't already done so. I refer to them all the time.
Report back, and do bear with me if I appear to be blind or stupid...