http://fr.php.net/manual/en/function.mysql-connect.php

server

The MySQL server. It can also include a port number. e.g. "hostnameort" or a path to a local socket e.g. ":/path/to/socket" for the localhost.

If the PHP directive mysql.default_host is undefined (default), then the default value is 'localhost:3306'

come puoi vedere è un comportamento previsto, probabilmente chi ha configurato il file php.ini ha dimenticato o lasciato volontariamente la direttiva per il defaul host.
Probabilmente il db server è installato sulla stessa macchina, e ed è stato lasciato il valore di default, permettendo la connessione in auto anche senza passare i parametri.

ciao