好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php为什么连接不上orcle

在php.ini中打开extension=php_oci8扩展,重启服务。

将php/ext目录下的php_oci8.dll文件拷贝到system32目录下, 安装 Oracle9i客户端精简版 后重启电脑 (推荐学习:PHP视频教程)

配置:

$config = array (

    'dbconfig' => 
array (
  'db_host_name' => '192.168.2.197/orcl',
  'db_user_name' => 'zbkf',
  'db_password' => 'zbkf',
   
),
); 

查询:

//返回值  
    $arr_result = array(); 
    $arr_result['result'] = 'false';  //true false 为黑名单
    $arr_result['callerid'] = $callerid;  

    //取数据库参数
    $db_host_name=$config['dbconfig']['db_host_name']; //'localhost/ORCL''
    $db_user_name=$config['dbconfig']['db_user_name'];//'asgr'
    $db_pwd=$config['dbconfig']['db_password']; //'asgr'

    //连接Oracle
    $conn = oci_connect($db_user_name,$db_pwd,$db_host_name);//oci_connect('asgr','asgr','localhost/ORCL');
    if (!$conn) { 
   $e = oci_error(); 
   //print htmlentities($e['message']); 
   //WriteLog("连接Oracle时出错,oci_connect(".$db_user_name.",".$db_pwd.",".$db_host_name.")  ".htmlentities($e['message']));
   $arr_result['result'] = 'false';
   echo json_encode($arr_result);  //默认为不是黑名单
   return;
    } 
    else {
   //echo("连接成功!");
   //$select = 'SELECT BL_TEL FROM CC_BLACKLIST'; // 查询语句 
   $select = "Select count(BL_Tel) from CC_BlackList where BL_Tel like '%" . $callerid . "%' and BL_SFQY='0' ";
   //WriteLog($select);
   $result_rows = oci_parse($conn, $select); // 配置SQL语句,执行SQL
   $row_count = oci_execute($result_rows, OCI_DEFAULT); // 行数  OCI_DEFAULT表示不要自动commit 
   //echo($row_count);
   if(!$row_count) { //没有行
  $e = oci_error($result_rows); 
  //echo htmlentities($e['message']); 
  //WriteLog("查询时出错或没有行!,oci_connect(".$db_user_name.",".$db_pwd.",".$db_host_name.")  ". $select."  ".htmlentities($e['message']));
  $arr_result['result'] = 'false';
  echo json_encode($arr_result);  //默认为不是黑名单
   } 
   /*
   //取每行每列值 
   while($row = oci_fetch_array($result_rows, OCI_RETURN_NULLS)) {
   if($row[0]==$callerid){
 $arr_result['result']='true';
 echo json_encode($arr_result);  //是黑名单
 exit;
   }
   }
   */
   $count=0;
   while($row = oci_fetch_array($result_rows, OCI_RETURN_NULLS)) {
  $count=$row[0];
  break;
   }
   //WriteLog($count);
   if($count>=1){
  $arr_result['result']='true';
   }
   else {
  $arr_result['result']='false';
   }
   echo json_encode($arr_result);  //默认为不是黑名单
    } 

以上就是php为什么连接不上orcle的详细内容,更多请关注Gxl网其它相关文章!

查看更多关于php为什么连接不上orcle的详细内容...

  阅读:54次