[英]How to insert web form data to csv file using php
我試圖通過網絡表單在csv文件中實現數據存儲,我嘗試下面的代碼保存在“form.html”,“form1.php”,“formTest.csv”,這三個都在同一目錄中。
<form id="form1" name="form1" method="post" action="form1.php">
<table class="formatTblClass">
<tr>
</tr>
<tr>
<td width="68"><span>First Name</span></td>
<td width="215"><input class="<?=$aClass;?>" type="text" name="fn" id="fn" /></td>
<td width="62"><span>Last Name</span></td>
<td colspan="3"><input class="<?=$aClass;?>" name="ln" type="text" id="ln" size="50" /></td>
</tr>
<div align="center">
<input type="submit" name="Submit" id="Submit" value="Submit" />
<input type="reset" name="Reset" id="button" value="Reset" />
</div>
</table>
</form>
現在是form1.php腳本
<?php
$fn = $_POST['fn'];
$ln = $_POST['ln'];
if(empty($fn) || empty($ln))
{//show the form
$message = 'Fill in areas in red!';
$aClass = 'errorClass';
}
$cvsData = $fn . "," . $ln . "\n";
$fp = fopen("formTest.csv","a");
if($fp){
fwrite($fp,$cvsData); // Write information to the file
fclose($fp); // Close the file
}
?>
現在是formTest.csv文件
如果我在瀏覽器中運行它並再次刷新csv文件,我得到如下圖所示的輸出
如何獲得正確的用戶輸入輸出?
提前致謝
<?php
$fn = $_POST['fn'];
$ln = $_POST['ln'];
if(empty($fn) || empty($ln))
{
//show the form
$message = 'Fill in areas in red!';
$aClass = 'errorClass';
}
else
{
$fp = fopen('formTest.csv', 'w');
$cvsData = $fn . "," . $ln . "\n";
fputcsv($fp, $cvsData);//use fputscv()
fclose($fp);
}
?>
嘗試在代碼中添加標題:
header("Content-type: text/csv");
試試這個吧。
<?php
if(isset($_POST['fn']))
{
$csv=array();// take an array
$fn = $_POST['fn'];
$ln = $_POST['ln'];
$csv[]=$fn;
$csv[]=$ln; //push the values in an array.
if(empty($fn) || empty($ln))
{//show the form
$message = 'Fill in areas in red!';
$aClass = 'errorClass';
}
$fp = fopen("formTest.csv","a");
if($fp)
{
foreach ($csv as $val)
{
fputcsv($fp, $val); //write data in csv file.
}
fclose($fp); // Close the file
}
}
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.