Open up the mysql command line client.
type in the following lines PERFECT, if you mess up, you have to start all over by restarting the command line client.

mysql>use mysql
mysql>select user, host, password from user;
# Now you should see that u have 3 entries
+-----------------------------+
| user | host | password |
+-----------------------------+
| root | localhost | |
| root | 127.0.0.1 | |
| | localhost | |
+-----------------------------+

mysql> delete from user where host="localhost" and user="";
mysql> update user set password=password("root") where user="root";
mysql> flush tables;
mysql> flush privileges;
mysql> quit

Now the mysql table should be updated and everything fixed.