Foros del Web » Programando para Internet » PHP »

Error al conectar PHP con Visual FoxPro por ODBC

Estas en el tema de Error al conectar PHP con Visual FoxPro por ODBC en el foro de PHP en Foros del Web. Hola amig@s, Mi programa de gestión en la empresa usa bases de datos Visual FoxPro en un servidor con Windows 7 Home Premium 64 bits. ...
  #1 (permalink)  
Antiguo 07/02/2013, 11:34
 
Fecha de Ingreso: diciembre-2010
Mensajes: 11
Antigüedad: 13 años, 4 meses
Puntos: 0
Error al conectar PHP con Visual FoxPro por ODBC

Hola amig@s,

Mi programa de gestión en la empresa usa bases de datos Visual FoxPro en un servidor con Windows 7 Home Premium 64 bits. Cuando voy de ruta quiero acceder a los datos mediante internet. Parece claro que la mejor opción es tener un servidor web en el ordenador de la oficina (wamp) que consulte la base de datos Foxpro mediante php para mostrarmelo en una aplicación web que estoy empezando a hacer.

Pues bien creo un DSN de sistema mediante el Administrador de orígenes de datos ODBC que está en c:\Windows\SysWOW64\ y utilizo el driver "Microsoft FoxPro VFP Driver". Una vez configurado voy a ejecturar mi php para establecer conexión (adjunto código):
Código:
$cnx = odbc_connect( "fastbroker", "", "" );
Me sale este error que no da nada de información:
Warning: odbc_connect(): in C:\wamp\www\pruebas_odbc\prueba.php on line 4
Call Stack
# Time Memory Function Location
1 0.0005 246232 {main}( ) ..\prueba.php:0
2 0.0005 247088 odbc_connect ( ) ..\prueba.php:4

No hay manera de que establezca conexión y he hablado con la desarrolladora del software de gestión y la configuración está bien. Por eso os pido ayuda para a ver si me podeis decir qué está fallando.

Muchísimas gracias por adelantado
  #2 (permalink)  
Antiguo 07/02/2013, 11:44
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

por lo que veo es problema de memoria, pero a la vez me intriga porque no creo que una simple conexión ODBC consuma tantos recursos.

primero debes de probar la conexión ODBC, creo que en access se podía conectar para consultar datos

otra es verificar quien maneja la autenticación: ¿es de windows (LDAP)?, ¿ya está establecida en el DSN?, ¿es pasado por la cadena de conexión?

no recuerdo muy bien pero aveces hay que establecer un parámetro pooling=false para que funcione, al menos me pasó cuando quise conectar desde una PDA WindowsCE .NetCompactFramework con MySQL via ODBC y también con MsSQL via ODBC, revisa los posibles parámetros a pasar en la cadena de conexión
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 07/02/2013, 11:58
 
Fecha de Ingreso: diciembre-2010
Mensajes: 11
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

Cita:
Iniciado por maycolalvarez Ver Mensaje
por lo que veo es problema de memoria, pero a la vez me intriga porque no creo que una simple conexión ODBC consuma tantos recursos.

primero debes de probar la conexión ODBC, creo que en access se podía conectar para consultar datos

otra es verificar quien maneja la autenticación: ¿es de windows (LDAP)?, ¿ya está establecida en el DSN?, ¿es pasado por la cadena de conexión?

no recuerdo muy bien pero aveces hay que establecer un parámetro pooling=false para que funcione, al menos me pasó cuando quise conectar desde una PDA WindowsCE .NetCompactFramework con MySQL via ODBC y también con MsSQL via ODBC, revisa los posibles parámetros a pasar en la cadena de conexión
Gracias por la rapidez maycolalvarez. Respecto a la autenticación, he probado usando DSN de Sistema y DSN de usuario y en ambos casos el error es el mismo. Cómo sería si le paso el dsn mediante cadena??

Por otra parte, si es problema de memoria, tendría que modificar algún parametro del Apache??

Gracias nuevamente.
  #4 (permalink)  
Antiguo 07/02/2013, 12:50
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

puedes modificar la directiva memory_limit, tanto en el php.ini como con ini_set en tiempo de ejecución, pero como te indique ignoro que se deba a ello.

no recuerdo como se construia la cadena de conexión, pero no es nada del otro mundo, creo que es parametro=valor, parametro=valor, consulta en la MSDN
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 09/02/2013, 05:38
 
Fecha de Ingreso: diciembre-2010
Mensajes: 11
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

Modificando la directiva memory_limit sigue igual. De todas formas, lo raro es que en el mensaje de error no dice qué error es, solo muestra la pila de memoria. Alguna otra sugerencia para acceder a una base de datos foxpro9 mediante php? Tengo win7 64 bits + Foxpro9 + Wampserver 2.2 (64 bits)
Por internet veo que hay muchos usuarios que lo hacen funcionar pero a mí se me resiste. Muchas gracias por adelantado
  #6 (permalink)  
Antiguo 11/02/2013, 20:46
 
Fecha de Ingreso: diciembre-2010
Mensajes: 11
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

Ya está arreglado, ya se ejecuta correctamente el odbc_connect. El siguiente problema es que al ejecutar sentencia SQL (SELECT * FROM datos), me acepta la sentencia pero la consulta me devuelve -1 porque no ha obtenido nada(cuando debería porque los hay). Cualquier ayuda sería bienvenida
  #7 (permalink)  
Antiguo 12/02/2013, 09:06
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años
Puntos: 58
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

Hola jorgeasin,

yo también estoy en una empresa en la que probablemente usemos el mismo ERP que tú por la pinta. Yo lo tengo así configurado, suponiendo que la base de datos sea DBase.

El controlador es Microsoft Visual FoxPro-Treiber. Luego lo configuré como Free Table Directory y en options tengo marcado NULL y DELETED para que no salgan esas filas. Fetch in background lo tengo desactivado.

El Driver lo tuve que bajar de la web de microsoft pero no te puedo decir la URL porque no la recuerdo pero ya van varias veces que tuve que buscar el driver y es fácil de encontrar.

Para conectar yo utilizo esta sentencia:
Código PHP:
Ver original
  1. $conexion = odbc_connect ( "bd", "", "" ) or die ( exit ( "Imposible conectar" ) );
  2. $resultado = odbc_exec ( $conexion, $consulta ) or die ( "Error en odbc_exec" );   
  3. while ($fila = odbc_fetch_array($resultado)) {
  4.      /*operaciones*/    
  5. }

Espero servir de ayuda.

Un saludo
  #8 (permalink)  
Antiguo 13/03/2013, 09:00
 
Fecha de Ingreso: marzo-2013
Mensajes: 1
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Error al conectar PHP con Visual FoxPro por ODBC

Cita:
Iniciado por jorgeasin Ver Mensaje
Hola amig@s,

Mi programa de gestión en la empresa usa bases de datos Visual FoxPro en un servidor con Windows 7 Home Premium 64 bits. Cuando voy de ruta quiero acceder a los datos mediante internet. Parece claro que la mejor opción es tener un servidor web en el ordenador de la oficina (wamp) que consulte la base de datos Foxpro mediante php para mostrarmelo en una aplicación web que estoy empezando a hacer.

Pues bien creo un DSN de sistema mediante el Administrador de orígenes de datos ODBC que está en c:\Windows\SysWOW64\ y utilizo el driver "Microsoft FoxPro VFP Driver". Una vez configurado voy a ejecturar mi php para establecer conexión (adjunto código):
Código:
$cnx = odbc_connect( "fastbroker", "", "" );
Me sale este error que no da nada de información:
Warning: odbc_connect(): in C:\wamp\www\pruebas_odbc\prueba.php on line 4
Call Stack
# Time Memory Function Location
1 0.0005 246232 {main}( ) ..\prueba.php:0
2 0.0005 247088 odbc_connect ( ) ..\prueba.php:4

No hay manera de que establezca conexión y he hablado con la desarrolladora del software de gestión y la configuración está bien. Por eso os pido ayuda para a ver si me podeis decir qué está fallando.

Muchísimas gracias por adelantado
Que tal amigo .. yo estoy tratando con conectar una dbf por php iis .. ya configure mi IIS para poder ejecutar PHP .. ahora a la hora de ejecutar mi cadena de conexion me sale esto
Fatal error: Call to undefined function dbase_open() in C:\inetpub\wwwroot\ws\conexion.php on line 3

mi cadena de conexion es :

<?php
// open in read-only mode
$db = dbase_open('practica.dbf');
if ($db) {
dbase_close($db);
}
?>

ya agrege la libreria php_dbase.dll y configure el php.ini .. y nada
necesito una ayuda alguien que sepa como hacer la conexion
se lo agradeceria

mi correo es [email protected]

Etiquetas: foxpro, odbc, visual
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 18:59.