2017-06-19 104 views
0

我有以下代碼,它將數據從我的表單添加到Excel電子表格中。然而,當新用戶填寫表單它覆蓋的第一行上的數據,我將如何確保新的表單提交填充新的行此文件「datacollection.xlsx」使用PHP將數據添加到excel文件中的新行

<?php 

$name = $_POST['name']; 
$email = $_POST['email']; 
$title = $_POST['title']; 
$company = $_POST['company']; 

$fp=fopen(".datacollection.xlsx","w"); 
fputcsv($fp, array($name, $email, $title, $company), ';'); 
fclose($fp); 

?> 

幫助表示讚賞!

+0

你沒有擰第一步的excel格式文件它只是一個csv – rtfm

回答

2

使用a+而不是w模式fopen(),以便它將文件指針放在文件的末尾。像:

... 
$fp=fopen(".datacollection.xlsx","a+"); //use a+ instead of w 
fputcsv($fp, array($name, $email, $title, $company), ';'); 
... 
+0

這會適當處理新行嗎? – ChickenFeet

+0

@ChickenFeet fputcsv使用\ n作爲可能無法在某些系統上工作的行尾,因此如果需要,可能需要某種類型的自定義。看到這裏參考:: https://stackoverflow.com/questions/4080456/fputcsv-and-newline-codes –

相關問題