按'submit button'后.csv删除文件中不需要的逗号



这是问题所在:

我制作了一个表单字段,人们可以在其中输入他们的姓名和地址等。 当所有内容都填满并按发送时,我会在.csv文件中获取详细信息。 但是我的问题是,当我清空或全部为空的字段时,我在.csv文件中得到的所有内容都是" ,,,, "。

这是我的代码:

<form method="POST" action="index.php">
<input type="text" name="vorname"   placeholder="Vorname Eingeben">     <br>
<input type="text" name="nachname"  placeholder="Nachname Eingeben">    <br>
<input type="text" name="ort"       placeholder="Ort Eingeben">         <br>
<input type="text" name="plz"       placeholder="PLZ Eingeben">         <br>
<input type="text" name="strasse"   placeholder="Straße Eingeben">      <br>
      <br>
<input type="submit" name='Absenden'>
</form>

.PHP

$data = array (
$_POST ['vorname'], $_POST ['nachname'], $_POST ['ort'], $_POST ['plz'], $_POST ['strasse']
);
$fp = fopen('file.csv', 'a+');
fputcsv($fp, $data);
fclose($fp);

这是填写/未填写表格后的.csv结果。

test1,test2,test3,test4,test5
,,,,
test3,test5,test6,test7,
test,,test,,

这; 这些是我试图摆脱的那些,或者更确切地说,当表格没有填写时,它们不会出现。

您可以在 csv 中插入任何新行之前进行测试,如下所示:

$data = array (
$_POST ['vorname'], 
$_POST ['nachname'], 
$_POST ['ort'], 
$_POST ['plz'], 
$_POST ['strasse']
);
if(!empty(array_map('trim', array_filter($data)))) {
$fp = fopen('file.csv', 'a+');
fputcsv($fp, $data);
fclose($fp);    
}

最新更新