Basculez "localhost" vers 127.0.0.1.
Donc, au lieu de :
$db = new mysqli( 'localhost', 'root', 'pass', 'mydb');
Utiliser :
$db = new mysqli( '127.0.0.1', 'root', 'pass', 'mydb');
Étant donné que cette question semble être assez populaire et que beaucoup de gens aimeraient savoir POURQUOI cela se produit :
Il convient de noter que ce problème ne semble se produire qu'avec Windows 7 et versions ultérieures. Avant Windows 7, la résolution localhost était gérée par le fichier hosts, qui était préconfiguré avec 127.0.0.1