Ciao,
mi sto interfacciando con 2 server MSSQL, il 1° è un MSSQL2000 e l'altro è un MSSQL2005 e per fare questo ho provato a usare PDO. COn il primo non ci sono problemi..
Connessione MSSQL2000 con PDO
Codice PHP:
$mssql = new PDO("odbc:MSSQL-2000" ,"us1","pass1");
$Reps=$mssql->query("SELECT * FROM tb1");
$RowReps=$Reps->fetchAll();
print_r($RowReps);
questa connessione funziona correttamente. poi eseguo una seconda PDO al secondo server MSSQL2005 (nella pagina ho provato la singola chiamata, come la chiamata ai 2 server per verificare che non fosse PDO a gestire male 2 chiamate nella stessa pagina)
Connessione MSSQL2005 con PDO
Codice PHP:
$mssql2=new PDO("odbc:MSSQL-2005","us2","pass2");
echo 1;
$Reps2=$mssql2->query("SELECT * FROM tb2");
echo 2;
$RowReps2=$Reps2->fetchAll();
echo 3;
print_r($RowReps2);
E qui la stranezza...se non commento $RowReps2=$Reps2->fetchAll(); la pagina rimane bianca...senza passarmi errori (ho provato a catturarli con try{}catch(){},con error_reporting(E_ALL) e anche verficando sui log del php), se invece la commento mi appaiono gli echo 123.
Ho provato anche a usare una connessione odbc_connect() per verificare appunto se il problema fosse il PDO e infatti ne ho avuto la conferma perchè in questo tipo di connessione a MSSQL2005 i dati mi vengono risposti.
Connessione MSSQL2005 senza PDO
Codice PHP:
$connect = odbc_connect("MSSQL-2005", "us2", "pass2");
# query the users table for all fields
$query = "SELECT * FROM tb2";
echo "<hr>";
# perform the query
$result = odbc_exec($connect, $query);
# fetch the data from the database
while(odbc_fetch_row($result)) {
$field1 = odbc_result($result, 1);
$field2 = odbc_result($result, 2);
print("$field1 $field2\n");
}
# close the connection
odbc_close($connect);
Come mai PDO con MSSQL2005 non funziona?