Se la tua edizione è SQL Server Express, probabilmente dovresti usare:
$objConnect = mssql_connect("localhost\SQLEXPRESS","usr","pass");
O se è altrimenti un'istanza denominata, allora
$objConnect = mssql_connect("localhost\InstanceName","usr","pass");
Se devi connetterti in remoto, ovviamente non dovresti usare localhost
poiché come fa il server web remoto a localizzare tuo localhost
? Dovresti utilizzare uno dei seguenti (supponendo che il server web remoto possa vedere la tua macchina con l'indirizzo IP 192.168.5.22):
$objConnect = mssql_connect("192.168.5.22\SQLEXPRESS","usr","pass");
$objConnect = mssql_connect("192.168.5.22\NamedInstance","usr","pass");
$objConnect = mssql_connect("192.168.5.22","usr","pass");
Ovviamente il tuo firewall deve avere la porta 1433 (e possibilmente 1434) aperta per accettare quella connessione, e ci sono anche molte altre cose che possono andare storte qui.
Tuttavia, un piccolo suggerimento per il debug. Invece di:
if($objConnect)
{
echo "Database Connected.<br />";
echo mssql_error();
}
else
{
echo "Database Connect Failed.<br />";
}
Perché no:
if($objConnect)
{
echo "Database Connected.<br />";
}
else
{
echo "Database Connect Failed.<br />";
echo mssql_error();
}
Sicuramente non è necessario scrivere un errore nella pagina quando il database si connette correttamente. E comunicarci l'effettivo messaggio di errore che ricevi potrebbe prepararci meglio a indicarti la direzione di una soluzione. Un messaggio generico "Connessione database non riuscita" che hai scritto non darà a nessuno la minima idea di cosa sia andato storto. Ma scommetto mssql_error()
potrebbe!