我创建了一个基于 Web 的打印日志,它使用 PHP 将表单数据发送到 .CSV 文件。一切似乎都正常工作。虽然,我发现了一个我似乎无法解决的小错误(还)。
打印日志中有七个条目提交到 .CSV 文件。其中两个条目是从每天更新的两个不同 .DAT 文件中填充的下拉列表。
问题:
成功提交表单数据并打开 .CSV 文件后,我注意到使用下拉列表的两个实体的格式与其余数据不同。
您可以通过查看以下屏幕截图来了解我的意思:http: //i49.tinypic.com/2n87eko.jpg
我相信问题来自以下代码,该代码提取了“项目编号”和“员工姓名”下拉框数据:
<?php
$file = 'dat_files/Employees.dat';
$handle = @fopen($file, 'r');
if ($handle) {
while (!feof($handle)) {
$line = fgets($handle, 4096);
$item = explode('|', $line);
echo '<option value="' . $item[0] . '">' . $item[0] . '</option>' . "\n";
}
fclose($handle);
}
?>
任何帮助或想法将不胜感激。谢谢你。
下面是用于将表单数据发送到 .CSV 文件的代码。
<?php
if(isset($_POST["submit"]))
{
$type = $_POST["type"];
$date = $_POST["date"];
$job_number = $_POST["job_number"];
$phase = $_POST["phase"];
$task = $_POST["task"];
$number_copies = $_POST["number_copies"];
$name = $_POST["name"];
if(empty($type)||empty($date)||empty($job_number)||empty($phase)||empty($task)||empty($number_copies)||empty($name))
{
header('Location: submit/unsuccessful.htm');
die;
}
$cvsData = "\"$type\",\"$date\",\"$job_number\",\"$phase\",\"$task\",\"$number_copies\",\"$name\"".PHP_EOL;
$fp = fopen("log.csv", "a");
if($fp)
{
fwrite($fp,$cvsData); // Write information to the file
fclose($fp); // Close the file
header('Location: submit/successful.htm');
}
}
?>