Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Consultar paradox desde PHP

Estas en el tema de Consultar paradox desde PHP en el foro de Bases de Datos General en Foros del Web. En si el titulo dice mi duda como hago para consultar datos de una bd de paradox desde mi sitio web?¿ ya ke tengo ke ...
  #1 (permalink)  
Antiguo 04/12/2009, 10:47
 
Fecha de Ingreso: diciembre-2009
Ubicación: Cancun Q.roo
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Pregunta Consultar paradox desde PHP

En si el titulo dice mi duda como hago para consultar datos de una bd de paradox desde mi sitio web?¿
ya ke tengo ke hacer un modulo ke copie los registros de una tabla paradox y genere una tabla de mysql con esos datos desde php si alguien me pudiera hechar una manita (o un codiso mejor) se lo agradeceria ya que es un problema que no e podido resolver
  #2 (permalink)  
Antiguo 09/12/2009, 10:59
 
Fecha de Ingreso: diciembre-2009
Ubicación: Cancun Q.roo
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Consultar paradox desde PHP

nadieee? alguna idea? o referencia? facil de entender... sigo en busca pero casi no le entiendo a los codigos.. si encuentro algo lo posteooo a lo mejor a alguien le interesa :P
  #3 (permalink)  
Antiguo 13/01/2010, 13:20
 
Fecha de Ingreso: diciembre-2009
Ubicación: Cancun Q.roo
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Consultar paradox desde PHP

Cita:
Iniciado por mrche86 Ver Mensaje
nadieee? alguna idea? o referencia? facil de entender... sigo en busca pero casi no le entiendo a los codigos.. si encuentro algo lo posteooo a lo mejor a alguien le interesa :P
Ok porfin pude encontrar el codigo para hacer consultas a paradox desde php me tarde bastante en encontrarlo pero al fin lo halle... espero que a alguien le sirva, y no tarde tanto en encontrarlo ya ke el tiempo es oro jojojo


Esta seria la libreria
Código PHP:
<?php 

/* 
Implement class to use paradox functions 
*/ 

class cParadox 

    
//members 
    
var $m_pxdoc NULL
    var 
$m_fp     NULL
    var 
$m_rs     NULL
    var 
$m_default_field_value ""
    var 
$m_use_field_slashes false;    
    var 
$m_use_field_trim      false;    
     
    function 
Open($filename
    { 
        
$this->m_pxdoc px_new(); 
        if( !
$this->m_pxdoc
        { 
            die (
"cParadox Error: px_new() failed."); 
        } 
    
        
$this->m_fp fopen($filename"r"); 
    
        if(!
$this->m_fp
        { 
            
px_delete($this->m_pxdoc); 
            die (
"cParadox Error: fopen failed.Filename:$filename"); 
        } 
    
        if(!
px_open_fp($this->m_pxdoc ,$this->m_fp) ) 
        { 
            
px_delete($this->m_pxdoc); 
            
fclose$this->m_fp ); 
            die (
"cParadox Erro: px_open_fp failed."); 
        } 
    
        return 
true;    
    } 
    
    function 
Close() 
    { 
        if ( 
$this->m_pxdoc 
        { 
            
px_close($this->m_pxdoc); 
            
px_delete($this->m_pxdoc); 
        } 
        
        if( 
$this->m_fp 
        { 
            
fclose$this->m_fp ); 
        } 
    } 
    
    function 
GetNumRecords() 
    { 
        return 
px_numrecords($this->m_pxdoc); 
    } 
    
        function 
GetRecord($rec
    { 
        
$this->m_rs px_get_record($this->m_pxdoc ,$rec ,PX_KEYTOUPPER); 
        return 
$this->m_rs
    } 
        
    function 
GetField($field ,$type=0$format=0
    { 
        if ( !
$this->m_rs 
        { 
            return 
false;      
        } 
        
        
$value = isset($this->m_rs[$field])? $this->m_rs[$field] : ""
        
        if ( 
$this->m_use_field_slashes 
        { 
            
$value addslashes($value); 
        } 

        if ( 
$this->m_use_field_trim 
        { 
            
$value trim($value); 
        } 
        

        return 
$value
    } 
}; 

?>


Y asi se consulta

Código PHP:
<?php error_reporting(E_ERROR); 
require_once(
"parado_nosep.php"); 

$pdx = new cParadox(); 
$pdx->m_default_field_value "?";//" "; 

if ( $pdx->Open("TRABAJAD.DB") ) 

    
$host2 'host';
    
$user2 'user';
    
$pass2 'pass';
    
$db2 'base de dato';
    
$link2 mysql_connect($host2,$user2,$pass2);

    
mysql_select_db($db2,$link2);
    
     
$tot_rec $pdx->GetNumRecords(); 
    if ( 
$tot_rec 
     { 
        echo 
"Consulta a tabla paradox por javier!!!  - Fecha: ".date("Y-m-d")."<br>";
        echo 
"<table border=1>\n"
        for(
$rec=0$rec<$tot_rec$rec++) 
        { 
            
$pdx->GetRecord($rec);    
            echo 
"<tr>"
            echo 
"<td>" $rec
            echo 
"<td>" $pdx->GetField(CLAVE_TRABAJADOR); 
            echo 
"<td>" $pdx->GetField(NOMBRE); 
            echo 
"<td>" $pdx->GetField(PATERNO); 
            echo 
"<td>" $pdx->GetField(MATERNO);
            echo 
"<td>" $fecha;
            
$numemp=$pdx->GetField(CLAVE_TRABAJADOR);        
            
$fecha=jdtogregorian($pdx->GetField(FECHA_NAC)+1721425);            
            
$arreglo=explode("/",$fecha);
            
$dato=$arreglo[2]."-".$arreglo[0]."-".$arreglo[1];
            
//mysql_query("UPDATE emp SET FECHA_NAC='$dato' WHERE numemp='$numemp'");
        

    } 
    
$pdx->Close(); 
    echo 
"</tr></table>";
    echo
"Se han leido ".$tot_rec."registros";

?>
Como ven el primer codigo es una libreria en la cual tiene las funciones para leer borrar etc
io solo use leer y si se dan cuenta abro una conexion mysql para insertar el dato fecha de mi paradox a la tabla emp de mysql aunke en el ejemplo este comentariada..
Pero pss ustedes pueden usar el script para migraciones y consultas..

Última edición por mrche86; 13/01/2010 a las 13:23 Razón: me falta la explicacion
  #4 (permalink)  
Antiguo 22/11/2010, 16:05
 
Fecha de Ingreso: septiembre-2009
Mensajes: 3
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Consultar paradox desde PHP

Tiene un error hace una llamada a una función que no existe

px_new
  #5 (permalink)  
Antiguo 14/06/2011, 09:27
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 1
Información Respuesta: Consultar paradox desde PHP

hola amigo soy new en el foro pero puedes hacer la consulta por medio de un odbc ese lo configuras en la herramientas de windows, ya una vez que tengas eso tienes que hacer la consulta utilizando sentencias un poco diferentes aqui te dejo un ejemplo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<style type="text/css">
<!--
body {
background-image: url(Pantalladeproduccion.png);
background-repeat: no-repeat;
background-color: #000000;
background-position: 50% 0%;
}
body,td,th
{
color: #FFFFFF;
}
#Layer1
{
position:absolute;
width:200px;
height:115px;
z-index:1;
left: 65px;
top: 22px;
}
.Estilo2 {font-size: 24px}
.Estilo4 {font-size: 36px}
-->
</style></head>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<ul>
<?php
$dsn = "pad";
//debe ser de sistema no de usuario
$usuario = "";
$clave="";


//realizamos la conexion mediante odbc
$cid=odbc_connect($dsn, $usuario, $clave);
if (!$cid)
{
exit("<strong>Ya ocurrido un error tratando de conectarse con el origen de datos.</strong>");
}
// consulta SQL a nuestra tabla "usuarios" que se encuentra en la base de datos "db.mdb"
$sql="Select Count(*) AS counter from BLKBRD ";
$result=odbc_exec($cid,$sql)or die(exit("Error en odbc_exec"));
$arr = odbc_fetch_array($result);
$resultados2=$arr['counter'];
$registros = 4;
if (!$pagina)
{
$inicio = 0;
$pagina = 1;

}
else
{
$inicio = ($pagina-1) * $registros;
//echo $inicio;
//echo $registros;
}
if ($pagina <=1)
{
$resultados = odbc_exec($cid,"SELECT top 4 * FROM BLKBRD");
}
else
{
$resultados = odbc_exec($cid,"SELECT TOP $registros * FROM BLKBRD WHERE Id NOT IN (SELECT TOP $inicio Id FROM BLKBRD ) ");
}
$flag=0;
$colorfont = "#00ffff";
$colorfont2 = "#FFffff";
$total_registros = $resultados2;
$total_paginas = ceil($total_registros / $registros);
if($total_registros)
{
while($articulo=odbc_fetch_array($resultados))


{
echo "<table width='100%' height='45' border='0px' cellspacing='1'>
<tr>
<td width= 80 height='43' ><font color=$colorfont size='6'><b>".$articulo['Linea']."</td>
<td width= 170 ><font color=$colorfont2 size='6'><b>".$articulo["Fecha"]."</td>
<td width= 120 ><font color=$colorfont2 size='6'><b>".$articulo["Modelo"]."</td>
<td width= 150 ><font color=$colorfont2 size='6'><b>".$articulo["Pedido"]."</td>
<td width= 150><font color=$colorfont2 size='6'><b>".$articulo["Standard"]."</td>
<td width= 150><font color=$colorfont2 size='6'><b>".$articulo["Producido"]."</td>
<td><font color=$colorfont2 size='6'><b>".$articulo["Personal"]."</td>
</tr> <br><br><br><br>";



}
}
else
{
echo "<font color='darkgray'>(sin resultados)</font>";
}
$cont=0;
odbc_free_result($resultados);
if($total_registros)
{
echo "<center>";
if(($pagina - 1) > 0)
{
echo "<a href='paginacion2.php?pagina=".($pagina-1)."'> </a> "; // a qui iba anterior
}
for ($i=1; $i<=$total_paginas; $i++)
{
if ($pagina == $i)
"<b>".$pagina."</b> "; // aqui iba $.pagina.
else
echo "<a href='paginacion2.php?pagina=$i'> </a> "; //tenia echo $i
}
if(($pagina + 1)<=$total_paginas)
{
echo " <a href='paginacion2.php?pagina=".($pagina+1)."'> </a>"; //aqui iba siguiente
}
echo "</center>";
}
$total_paginas=$total_paginas+2;
$total_paginas2=$total_paginas-2;
// Sistema pantalla de informacu
?>
</body>
<head>
</ Head>
</html>
<body>
</body>
</html>

<?php
if($pagina<$total_paginas )
{
$pagina=$pagina+1;
?>
<script language="javascript">
window.location='paginacion2.php?pagina=<? echo $pagina ?>';
</script>
<?php
sleep(3);
}
?>
<?php
if($pagina>=$total_paginas2)
{
$pagina=1;
?>
<script language="javascript">
window.location='paginacion2.php?pagina=<? echo $pagina ?>';
</script>
<?php
sleep(5);
}
?>



esta una pagina que muestra los resultados de una tabla de paradox y los pagina despues!!
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

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 01:18.