我目前正在一个项目中,我需要将一些信息发布到 csv 文件然后读回,以便用户可以看到以前的信息然后对其进行编辑。有点像一个数据库表,其中信息将在单元格中,它应该在另一行中旁边有一些文本。
目前我的代码有两个表,一个显示来自 csv 的信息,另一个显示将数据发送到 csv,但我希望将其合并,以便他们可以看到以前创建的信息是什么,然后他们可以编辑这个信息点击提交,这就是将出现在表格中的信息。
这是我现在的代码...
$myfile = "outputfile.csv";
if (!isset($_POST['submit'])) {
$f = fopen($myfile, 'r');
echo "<table>";
while (($line = fgetcsv($f)) !== false) {
echo "<tr>";
foreach ($line as $cell) {
echo "<td>" . htmlspecialchars($cell) . "</td>";
}
echo "</tr>\n";
}
fclose($f);
echo "\n</table>";
echo "
<form action='' method='POST'>
<table border='1'>
<tr>
<td><input name='var1' type='text'></td>
<td>MMR</td>
</tr>
<tr>
<td><input name='var2' type='text'></td>
<td>FIVE_IN_ONE</td>
</tr>
<tr>
<td><input name='var3' type='text'></td>
<td>BOOSTER</td>
</tr>
<tr>
<td><input name='var4' type='text'></td>
<td>MENC</td>
</tr>
</table>
<input name='submit' type='submit' value='Submit'>
</form>";
} else {
$text1 = $_POST['var1'];
$text2 = $_POST['var2'];
$text3 = $_POST['var3'];
$text4 = $_POST['var4'];
$fh = fopen($myfile, 'w+');
fwrite($fh, $text1 . "\r\n" . $text2 . "\r\n" . $text3 . "\r\n" . $text4);
fclose($fh);
echo $text1 . "<br>" . $text2 . "<br>" . $text3 . "<br>" . $text4;
}