PX : code

Foxpro via ODBC by Ron Boles
Download this code


<?

//__________________________________________________________
//
//      foxpro.php
//      test odbc interface to visual foxpro free tables
//__________________________________________________________
//
                 
                 
//__________________________________________________________
function Error_Handler( $msg, $cnx ) {
//
    echo "$msg \n";
    odbc_close( $cnx);
    exit();
}

//__________________________________________________________
function format_data( $data ) {
//
    $dat = trim($data);
    if (strlen($dat) == 0 || $dat == "1899-12-30" || $dat == "0")
        $dat = "&nbsp;";
    return $dat;
}
                 
//----------------------------------------------------------
// mainline
//----------------------------------------------------------

odbc_close_all();
$cnx = odbc_connect( "beauty", "", "" );              
if( ! $cnx ) {
    Error_handler( "Error in odbc_connect" , $cnx );
}
                 
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">';
echo "\n<html>\n";
echo "<head>
<STYLE type='text/css'>
<!--
      th {
      FONT-FAMILY: 'Tahoma','Arial';
      color: red;
      FONT-SIZE: 10pt;
      FONT-WEIGHT: bold;
      Font-style: normal;
      }
      td {
      FONT-FAMILY: 'Tahoma','Arial';
      color: black;
      FONT-SIZE: 10pt;
      FONT-WEIGHT: bold;
      Font-style: normal;
      }
-->
 </STYLE>";
echo "</head>\n";
echo "<body>\n";
$cur = odbc_exec( $cnx, "select * from product where lower(desc2) like '%perfume%'" );
if( ! $cur ) {
    Error_handler( "Error in odbc_exec( no cursor returned ) " , $cnx );
}               
                 
echo "<table border=1 align='center' bgcolor='#ffefef' cellpadding=1 cellspacing=1>\n";
$nfields = odbc_num_fields($cur); 
for($i= 1; $i <= $nfields; $i++ ) { 
    if (odbc_field_name($cur, $i) != "note") {
           echo("<TH>" . odbc_field_name($cur, $i) . "</TH>"); 
    }

echo("</TR>\n"); 
while(odbc_fetch_row($cur)) { 
       echo("<TR>");
       for($j = 1; $j <= $nfields; $j++) {
           if (odbc_field_name($cur, $j) != "note") {
               $value = format_data(odbc_result($cur, $j));
            echo("<TD>" . $value . "</TD>");
        }
    } 
    echo("</TR>\n"); 
}
echo("</TABLE>");
                
odbc_close( $cnx);
echo "</body>\n";
echo "</html>\n";   
           
?>

Comments or questions?
PX is running PHP 5.2.17
Thanks to Miranda Productions for hosting and bandwidth.
Use of any code from PX is at your own risk.