我正在写一个小的数据输入表单;然后转换为服务器上的csv文件。考虑下面的片段,我写了这个
if(!empty($_POST)) {
$handler = fopen('database.csv','a') or exit("Error: Unable to open file!");
fputcsv($handler,$_POST);
fclose($handler);
}
?>
很简单!
唯一的"奇特"任务是显示一条消息,确认条目已添加到数据库中(条目已添加),清除表单,为下一个条目做好准备。或者在出现错误的情况下,显示错误消息(Doh!Write failed)。我可以使用OR语句,但只有在出现错误时才会调用该语句。
知道怎么做吗?
[更新日期]感谢大家的精彩回复!我添加了条件语句,因为每个人都建议
if(!empty($_POST)) {
$handler = fopen('database.csv','a') or exit("Error: Unable to open file!");
if(fputcsv($handler,$_POST)) {
echo 'everything okay, add next record';
}
else {
exit('Error: Record add failed. Try again or contact admin');
}
fclose($handler);
}
if(!empty($_POST)) {
$handler = fopen('database.csv','a');
if ($handler === FALSE) {
exit("Error: Unable to open file!");
} else {
fputcsv($handler,$_POST);
fclose($handler);
echo "everything A-ok";
}
}
您可以包含一个三态开关,该开关:
)进行数据输入并重新显示已清除的表单;
)显示错误并重新填充表单,以便用户可以修复它;
)默认为无数据输入,清除
使用post或session变量指定要执行的操作,如果变量未设置或未验证,则默认为无操作。