我正在使用php来显示从文本文件中读取的记录,该文件具有空格填充字符串,每个字符串大小为10.我打开文件解压缩并将其显示在文本框中,直到达到EOF。 这是我使用的代码:
<html>
<head>
<title>Read Records</title>
<?php
$YourFile = "student.txt";
$handle = fopen($YourFile,'r');
$id = 0;
while (!feof($handle)) {
if ($s = fread($handle, 30)) {
$readata = unpack("A10chars/A10int/A10inr",$s);
$chars = $readata['chars'];
$int = $readata['int'];
$inr = $readata['inr'];
echo "<input type=\"text\" id=\"chars$id\" name=\"name\" value=\"$chars\">";
echo "<input type=\"text\" id=\"int$id\" name=\"name\" value=\"$int\">";
echo "<input type=\"text\" id=\"inr$id\" name=\"name\" value=\"$inr\">";
echo "<br>";
$id = $id + 1;
}
}
fclose($handle);
?>
</head>
现在,如果用户编辑任何记录,我需要跟踪所做的更改并在文件中更新它。使用php代码生成元素的ID。如何找到正在编辑的记录?
答案 0 :(得分:1)
这是逻辑:
当您从文件中读取时,您需要记住第一个和最后一个字符读取的位置。如果用户更新,则需要从第一个位置到最后一个位置删除文本,然后将新文本插入其位置。
虽然我不确定你是怎么做的。
您是否研究过SQLite(http://www.sqlite.org/),这是一种简单的方法来做同样的事情。由于没有安装SQLite,因此数据库文件保留在本地计算机上。