Ayuda PHP

Hola en php para conectarse con una tabla en Mysql para hacer consultas sql se utiliza mysql_query(), ¿con postgresql es pg_query()... Como se hace para conectarse con una tabla en Visual Foxpro...?
Me puedes ayudar.
Respuesta
1
Mmm.
Difícil situación, no he visto muchas personas que intenten conectar PHP a foxpro.
Esto podría realizarse con objetos com ODBC.
Tendrías que crear un DNS en el servidor que te permita la conexión a la base de datos. Una vez tengas tu DNS debes hacer la conexión pertinente.
Tal vez estos links pueda ser de gran ayuda http://www.portalfox.com/index.php?name=News&file=article&sid=741&mode=nested&order=0&thold=0
http://www.pecesama.net/php/odbc.php?PHPSESSID=8e0a64cb93f293d080580024c3477aa2
Cualquier duda escribe nuevamente.
NO... la tabla en foxpro ya la pude conectar con php... pero lo que necesito es poder hacer consultas... sql.. No hay alguna linea de código donde pueda meter una consulta sql hacia la tabla que tengo conectada...
Ya puedo cargar todos los datos... pero como hago para cargar por ejemplo los que estado civil sea solteros.. por ejemplo.
Intenta esto
<?
$dsn = "prueba";
$usuario = "";
$clave="";
//realizamos la conexion mediante odbc
$cid=odbc_connect($dsn, $usuario, $clave);
if (!$cid){
exit("<strong>Ha ocurrido un error tratando de conectarse con el origen de datos.</strong>");
}
// consulta SQL a la tabla "usuarios" que se encuentra en la base de datos
$sql="Select * from usuarios where estado_civil='soltero'";
// generamos la tabla mediante odbc_result_all(); utilizando borde 1
$result=odbc_exec($cid,$sql)or die(exit("Error en odbc_exec"));
print odbc_result_all($result,"border=1");
?>
Intenta esto
$dsn = "prueba";
$usuario = "";
$clave="";
//realizamos la conexion mediante odbc
$cid=odbc_connect($dsn, $usuario, $clave);
if (!$cid){
exit("<strong>Ha ocurrido un error tratando de conectarse con el origen de datos.</strong>");
}
// consulta SQL a la tabla "usuarios" que se encuentra en la base de datos
$sql="Select * from usuarios where estado_civil='soltero'";
// generamos la tabla mediante odbc_result_all(); utilizando borde 1
$result=odbc_exec($cid,$sql)or die(exit("Error en odbc_exec"));
print odbc_result_all($result,"border=1");
Hola Experto... ya conecte la tabla pero no lo hice con ODBC... entonces ese código no me sirve... no sabes otra manera de sacar la consulta sql... la conexión ya la tengo... necesito solo la consulta pero sin ODBC
Mmm habría que ver que método utilizaste, dependiendo de este, ver que sentencia de PHP se podría utilizar
<?php
$bbdd = "/data/recursos/tablas/mtemplea3.dbf";
$result = dbase_open ( $bbdd, 2 );
$ultimo = dbase_numrecords($result);
$campos= dbase_numfields($result);
//echo $ultimo;
echo $campos;
for($i=1;$i<=$ultimo;$i++)
{
$row= dbase_get_record( $result ,$i );}
Pero como te dije experto... con esto tengo acceso a todos los datos... pero necesito es hacer consultas y jugar con la información... SQL...
Si me puedes ayudar te agradezco... y si no de todos modos lo intentaste y eso merece una buena calificación.. cuenta con eso.
Fresco man.
Lo que menos me interesa es la calificación, me interesa aprender y poder ayudar.
Tu tema es complicado, la verdad no le he trabajado con PHP y FOXPRO y no he visto muchos que lo hagan, pero sigo investigando.
Lo que puedo observar en el manual de referencia de PHP, es que los métodos de dbase no tendrían una función fácil de manejar como un mysql_query o un pg_query, ya que con dbase tendrías que jugar con el numero del registro es decir la posición dentro del dataset que te retorna.
Habría que analizar si la forma que estas utilizando para conectarte a la base de datos es funcional. Yo creería que te facilitaría más las cosas la forma de conexión que te envíe anteriormente.
Pero igual me clavaste una gran duda. Seguiré investigando.
Ok... ojala me puedas ayudar... gracia por todo
Vale
Si encuentras primero la respuesta por el método que estas manejando me cuentas.
Me fasina aprender cosas nuevas todos los días.
Gracias por tu colaboración, y encontré la forma.. simplemente era como lo estaba haciendo pero la version del foxpro era distinta y ese era el problema.. unas tablas estaban con una version y las otras con otra... casi no pero se pudo

2 respuestas más de otros expertos

Respuesta
1
Supongo que el dbf lo debes de poner con ODBC, por lo cual se conecta con el odbc_exec(id_con, sentencia_sql) o la
odbc_do(id_con, sentencia_sql)
Respuesta
1
Para otras bases de datos puede utilizar las funciones de ODBC.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas