Foros del Web » Programando para Internet » PHP »

PHP con Odbc

Estas en el tema de PHP con Odbc en el foro de PHP en Foros del Web. Hola a todos Tengo el siguiente problema y me gustaría si me pudieran ayudar. Estoy haciendo una aplicación con php 4. Tengo que hacer consultas ...
  #1 (permalink)  
Antiguo 03/08/2004, 16:17
 
Fecha de Ingreso: abril-2004
Ubicación: Santiago Centro
Mensajes: 6
Antigüedad: 20 años, 7 meses
Puntos: 0
PHP con Odbc

Hola a todos
Tengo el siguiente problema y me gustaría si me pudieran ayudar.

Estoy haciendo una aplicación con php 4. Tengo que hacer consultas y ejecutar procedimientos almacenados de una BD Sybase. El php lo tengo configurado en un servidor linux9 y sobre la misma máquina tengo funcionando apache. Toda esta configuración funciona bien. Incluso tengo aplicaciones conectadas con mysql sin problemas.
El motor Sybase esta en una máquina distinta, bajo sistema operativo Unix SCO. Bajé los drivers ODBC para Sybase y cunado intento hacer un ODBC_Connect en php, encuentra la base de datos sybase, por que me da su nombre pero me dice lo siguiente "Warning: SQL error: [unixODBC][Easysoft][Sybase]Changed current database from master to BD_ENTI_CORPORATIVA, SQL state S1000 in SQLConnect ".
Estaría que muy agradecido si alguien me puede ayudar, puesto que estoy retrasando mi trabajo.
atte
Luis Astudillo
  #2 (permalink)  
Antiguo 03/08/2004, 17:14
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 21 años
Puntos: 0
deberías colocarnos el string de conecci´no porque al parecer eso es lo que te ha dado este error, si traduces el error apareceria algo como

"Ha cambiado la base de datos actual de master a BD_ENTI_CORPORATIVA... bla, bla, bla"
  #3 (permalink)  
Antiguo 04/08/2004, 12:28
 
Fecha de Ingreso: abril-2004
Ubicación: Santiago Centro
Mensajes: 6
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola HiTek
Te agradezco que me hayas respondido

El string de conección es el siguiente:

$enlace = odbc_connect('SYBASE', 'larinfo', 'explota');

Donde 'larinfo' es el login y 'explota' la pswd

Me causa cuidado el mensaje, puesto que en el sybase este login tiene asignado por defecto la base BD_ENTI_CORPORATIVA.
  #4 (permalink)  
Antiguo 04/08/2004, 14:09
Avatar de HiTek  
Fecha de Ingreso: noviembre-2003
Ubicación: LF, Santiago.Chile
Mensajes: 217
Antigüedad: 21 años
Puntos: 0
Hola, mira en la documentación de php, aparece odbc_connect(p1,p2,p3)

en donde:
p1: es una cadena de conección al motor de datos que en tu caso es Sybase
p2 es el nombre de usuario
p3: la contraseña de acceso

Para Sybase tienes distintos tipos de Strings dependiendo de la versión que estés usando, estos son los strings de conección:

Standard Sybase System 12 (or 12.5) Enterprise Open Client:
"Driver={SYBASE ASE ODBC Driver};Srvr=Aron1;Uid=username;Pwd=password"



Standard Sybase System 11:
"Driver={SYBASE SYSTEM 11};Srvr=Aron1;Uid=username;Pwd=password;"


Intersolv 3.10:
"Driver={INTERSOLV 3.10 32-BIT Sybase};Srvr=Aron1;Uid=username;Pwd=password;"



Sybase SQL Anywhere (former Watcom SQL ODBC driver):
"ODBC; Driver=Sybase SQL Anywhere 5.0; DefaultDir=c:\dbfolder\;Dbf=c:\mydatabase.db;Uid=u sername;Pwd=password;Dsn="""""

Ejemplo:
Código PHP:
$connection_string "Driver={SYBASE SYSTEM 11};Srvr=Aron1;Uid=username;Pwd=password;" 

$user 'username'
$pass 'password'

$connection odbc_connect$connection_string$user$pass ); 
prueba con estos strings, esto debería resolverte el problema, salu2
  #5 (permalink)  
Antiguo 04/08/2004, 16:29
 
Fecha de Ingreso: abril-2004
Ubicación: Santiago Centro
Mensajes: 6
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola HiTek
He probado los strings que me has enviado para todos lo casos me dice lo siguiente:
Warning: SQL error: [unixODBC][Driver Manager]Data source name not found, and no default driver specified, SQL state IM002 in SQLConnect
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:33.