Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/03/2012, 15:20
christianikolai
 
Fecha de Ingreso: abril-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Error en conexion php y odbc (Access) en Apache Linux

Espero puedan ayudarme,
Tengo un servidor con Ubuntu server y he instalado unixodbc y la libreria MDBToolsODBC para la conexion, he configurado el archivo odbc.ini y odbcinst.ini y he probado la conexion de la base de datos con isql nombre y puedo realizar consultas en sql con normalidad.

pero cuando quiero probarla desde el servidor web no puedo mostrar la informacion de la base de datos:

Código PHP:
<?
$dsn 
"datos";
$usuario "";
$clave="";

$cid odbc_connect("facturacion"$usuario$clave);

if (!
$cid){
    exit(
"<strong>Ya ocurrido un error tratando de conectarse con el origen de datos.</strong>");
}    

$sql="Select CBANCO, NBANCO from BANCO";

$result=odbc_exec($cid,$sql)or die(exit("Error en odbc_exec"));
print 
odbc_result_all($result,"border=2");
?>
Este codigo lo he probado en entorno windows con ODBC y funciona bien pero en el serv ubuntu no..

Por ahi lei que debo configurar el php.ini, pero creo que ya tiene todo en su lugar:



Código:
[ODBC]
; http://php.net/odbc.default-db
;odbc.default_db    =  Not yet implemented

; http://php.net/odbc.default-user
;odbc.default_user  =  Not yet implemented

; http://php.net/odbc.default-pw
;odbc.default_pw    =  Not yet implemented

; Controls the ODBC cursor model.
; Default: SQL_CURSOR_STATIC (default).
;odbc.default_cursortype

; Allow or prevent persistent links.
; http://php.net/odbc.allow-persistent
odbc.allow_persistent = On

; Check that a connection is still valid before reuse.
; http://php.net/odbc.check-persistent
odbc.check_persistent = On

; Maximum number of persistent links.  -1 means no limit.
; http://php.net/odbc.max-persistent
odbc.max_persistent = -1

; Maximum number of links (persistent + non-persistent).  -1 means no limit.
; http://php.net/odbc.max-links
odbc.max_links = -1

; Handling of LONG fields.  Returns number of bytes to variables.  0 means
; passthru.
; http://php.net/odbc.defaultlrl
odbc.defaultlrl = 4096

; Handling of binary data.  0 means passthru, 1 return as is, 2 convert to char.
; See the documentation on odbc_binmode and odbc_longreadlen for an explanation
; of odbc.defaultlrl and odbc.defaultbinmode
; http://php.net/odbc.defaultbinmode
odbc.defaultbinmode = 1

;birdstep.max_links = -1
El error que sale es: Error de HTTP 500 (Internal Server Error): Se ha detectado una condición inesperada cuando el servidor intentaba atender la solicitud.