Salve a tutti è da diversi mesi che sto cercando di eseguire questa connessione ma ancora non ci risco, ho cercato anche sul forum e ci sono notizie ma niente di esaustivo....
Vi spiego la mia situzione, ho un cloud aruba con centOS6 X64 e Plesk Panel, sono riscito a fare una configurazione di base decente e ho fatto pure l'upgrade della versione php alla 5.4.28, fin quì tutto ok, ora viene il bello....
Devo connettermi ad un databese che risiede su un'altro server presente nella mia struttura e non sul cloud, il database dall'esterno è accessibile perchè ho provato a connettermi usando Microsoft SQL Server Managment Studio quindi le problematiche di firewall e autenticazioni sono risolte...
Veniamo al dunque, ho letto che per integrare il file c'è bisogno di modificare il file php.ini, beh in locale funziona ma in remoto la cosa è totalmente diversa, sul cloud non c'è la cartella che contiene i driver e addirittura gli extra secondo me non sono contenuti nel file php.ini. perchè vedo un'altra cartella, questa è la struttura:
etc
|->php.d
| |->msqli.ini
| |->pdo.ini
| |->pdo_msql.ini
| |->pdo_sqlite.ini
| |->phar.ini
| |->shmop.ini
| |->simplexml.ini
| |->sockets.ini
| |->sqlite3.ini
| |->tokenizer.ini
| |->xml.ini
| |->xmlwriter.ini
| |->xls.ini
| '->zip.rar
|
'->php.ini
la struttura che si trova dentro questi file è la seguente : pdo.ini
; Enable pdo extension module
extension=pdo.so
e il file pdo.so elencato si trova sia in /usr/lib64/php/modules che in /usr/lib/64/php-zts/modules
Però analizzando il file php.ini nella sezione extension mi ritrovo questo
[code]
; For example
;
; extension=msql.so
;;; ... or with a path:
;
; extension=/path/to/extension/msql.so
;
; If you only provide the name of the extension, PHP will look for it in its
; default extension directory.
[code]
Ora veniamo al file che devo importare, sapendo la mia versione di php e il tipo di server su cui devo fare la connessione ho bisogno del file
php_pdo_sqlsrv_54_nts.dll
che ho estratto dal file batch SQLSRV V3.0 visto che il compilatore usato dovrebbe essere un VC9 avendo a che fare con windows server 2008 R2...
Ora, dove piazzo quasto file ? e mi conviene creare un file a parte o modificare il file php.ini ???
Ho fatto numerose prove giungendo sempre alla stessa conclusione, "PAGINA BIANCA!!!!! " nemmeno un maledetto errore che mi faccia capire di cosa si tratta.. zeor zero zero....
questo è lo script che sto usando per la connessione locale e che in remoto non funziona, ovviamente cambio l'indirizzo ip inserendo il mio ip pubblico
codice:
<?php
$serverName = "192.168.1.251"; //serverName\instanceName
$connectionInfo = array( "Database"=>"Adb_demo", "UID"=>"sa", "PWD"=>"50l@r15@2014");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
$queryString = "SELECT * FROM CF";
$query = sqlsrv_query($conn, $queryString) or die ("Problem in executing query");
//display the results
while($row = sqlsrv_fetch_array($query))
{
echo "<li>" . $row["Cd_CF"] . " " . $row[2] . "</li>";
}
?>