<?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;
}
};
usage example:
error_reporting(E_ERROR);
require_once("cparadox.inc");
$pdx = new cParadox();
$pdx->m_default_field_value = "?";//" ";
if ( $pdx->Open("USERS.DB") )
{
$tot_rec = $pdx->GetNumRecords();
if ( $tot_rec )
{
echo "<table border=1>\n";
for($rec=0; $rec<$tot_rec; $rec++)
{
$pdx->GetRecord($rec);
echo "<tr>";
echo "<td>" . $rec;
echo "<td>" . $pdx->GetField(CODE);
echo "<td>" . $pdx->GetField(NAME);
}
}
$pdx->Close();
}
?>
Paradox File Access
- Introduction
- Installing/Configuring
- Predefined Constants
- Paradox Functions
- px_close — Closes a paradox database
- px_create_fp — Create a new paradox database
- px_date2string — Converts a date into a string.
- px_delete_record — Deletes record from paradox database
- px_delete — Deletes resource of paradox database
- px_get_field — Returns the specification of a single field
- px_get_info — Return lots of information about a paradox file
- px_get_parameter — Gets a parameter
- px_get_record — Returns record of paradox database
- px_get_schema — Returns the database schema
- px_get_value — Gets a value
- px_insert_record — Inserts record into paradox database
- px_new — Create a new paradox object
- px_numfields — Returns number of fields in a database
- px_numrecords — Returns number of records in a database
- px_open_fp — Open paradox database
- px_put_record — Stores record into paradox database
- px_retrieve_record — Returns record of paradox database
- px_set_blob_file — Sets the file where blobs are read from
- px_set_parameter — Sets a parameter
- px_set_tablename — Sets the name of a table (deprecated)
- px_set_targetencoding — Sets the encoding for character fields (deprecated)
- px_set_value — Sets a value
- px_timestamp2string — Converts the timestamp into a string.
- px_update_record — Updates record in paradox database
wilson dot p dot pereira at itelefonica dot com dot br ¶
4 years ago
