2013-11-28 3 views
2

을 heres 내 오류가 표시되지PDO PHP ORACLE 연결

$database = ' 
    (DESCRIPTION = 
     (ADDRESS_LIST = 
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.28)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
     (SERVICE_NAME = orcl) 
    ) 
    )'; 


    $db = new PDO('oci:dbname='.$database, 'middleuser', '1'); 


    $sth = $db->prepare('SELECT * from BD_CENTERDEPT'); 
    $sth->execute(); 

    while($row = $sth->fetch(PDO::FETCH_OBJ)) { 

     echo $row->NAME."\n"; 

    } 

코드, 그런데 왜? 나는 오라클 인스턴트 클라이언트를 사용하고 있습니다. 내가 이미 환경 변수의 경로를 만들어 "C : \ XAMPP \ instantclient_12_1"

BD_CENTERDEPT은 NAME 열이 있음을 확신 내 php.ini의 스피에

이미 주석 "확장자 = php_pdo_oci.dll"와 그것에 대한 데이터.

오류는 표시되지만 데이터가 표시되지 않습니까? Oracle 데이터베이스에 실제로 연결되어 있는지 어떻게 알 수 있습니까?

+0

세트'(E_ALL)을 error_reporting를해야하며이 매우 스크립트의 시작에서'. – TiMESPLiNTER

+0

프로그래밍을하는 것뿐만 아니라 할 수있는 일이 있습니다. Pinging 192.168.8.28은 어떻습니까? oracle의 Query Tools를 사용하여 포트에 실제로 액세스 할 수 있는지 확인하십시오. 그렇다면 PDO 클래스의 인스턴스화는 어떻습니까? 문제가있을 수 있습니다 ... – daison12006013

답변

-1

야호 내가 내 쿼리에서 데이터베이스 이름을 잊었 :

$db->prepare('SELECT * from dbname.BD_CENTERDEPT')