0

私は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>

ユーザーがレコードを編集した場合、変更を追跡し、ファイル内で更新する必要があります。要素の ID は、php コードを使用して生成されます。編集中のレコードを見つけるにはどうすればよいですか??

4

1 に答える 1

1

ロジックは次のとおりです。

ファイルから読み取るときは、読み取った最初と最後の文字の位置を覚えておく必要があります。ユーザーが更新した場合、最初から最後の位置までのテキストを削除してから、その場所に新しいテキストを挿入する必要があります。

あなたがどうやってこれをやろうとしているのかはわかりませんが。

SQLite ( http://www.sqlite.org/ )を調べたことがありますか?それは、あなたがしようとしているのと同じことを行う簡単な方法です。SQLite はインストールされないため、DB ファイルはマシン上でローカルに保持されます。

于 2012-08-01T12:56:10.963 に答える