3
你能幫我解決嗎? 我需要在php中顯示.dbf表的註冊表,並具有以下代碼。如何使用php查看foxpro註冊表
<html>
<form method="get">
<input type="text" name="nrdoc"></input>
<input type="submit"></input>
</form>
<?php
if(isset ($_GET['nrdoc'])){
$thefile = "winges/vcabdoc.DBF";
if($thefile){
include('./dbf_class.php');
$dbf = new dbf_class($thefile);
$num_rec=$dbf->dbf_num_rec;
$field_num=$dbf->dbf_num_field;
$endexct = $timer->end();
echo("<blockquote>File Name : $thefile<br>Number of Records : $num_rec<br>Number of Fields : $field_num</blockquote>");
echo('<table border=1 cellspacing=0>');
echo('<tr>');
echo('<td>No. </td>');
for($j=0; $j<$field_num; $j++){
echo '<td> '.$dbf->dbf_names[$j]['name'];
if ($dbf->dbf_names[$j]['type']!='M') {
echo '<br>Length='.$dbf->dbf_names[$j]['len'];
}
echo '<br>Type='.$dbf->dbf_names[$j]['type'].'</td>';
}
echo '</tr>';
$i=$_GET['nrdoc'];
if ($row === $dbf->getRow("SELECT *, FROM winges/vcabdoc.dbf WHERE 'VCANUM' == $i")) {
echo('<tr>');
echo('<td align="right">'.str_pad($i+1, 3, "0", STR_PAD_LEFT).'</td>');
for($j=0; $j<$field_num; $j++){
if ($dbf->dbf_names[$j]['type']=='N') {
echo '<td align="right">';
}
else {
echo '<td align="left">';
}
echo htmlentities($row[$j]).' </td>';
}
echo '<tr>';
}
}
echo('</table>');
}
?>
</html>
的dbf_class.php是http://www.phpclasses.org
而且它總是返回數據庫中的第一數據線,請幫助我。
在此先感謝。
若昂
如果定時器類有無關的問題,然後將其刪除,並給它的引用,使代碼更小。並且稍微清理一下代碼......這相當難看。 – Flukey 2012-03-23 14:35:34
看看現在好不好。 – 2012-03-23 14:42:55
您正在加入'dbf_class.php' - 對操作非常重要。那從哪裏來的? [phpclasses.org](http://www.phpclasses.org/package/1302-PHP-Extract-information-from-a-DBF-database-file.html)? – Orbling 2012-03-23 14:49:31