我正在寻找一个简单的解决方案,希望是一个简单的问题。我想让笔记本电脑设置一个离线html文件,其中包含一个非常简短的表格,可以提供csv文件。我一直在关注fputcsv()
函数来做这件事,但我不是最有才华的程序员。如果我有一个看起来像这样的简单形式:
<?php
if(isset($_POST['submit']))
{
$myfile = fopen('file.csv', 'w');
fputcsv($myfile,
array($_POST['first-name'], $_POST['last-name'], $_POST['email']));
fclose($myfile);
}
?>
<article role="main">
<header role="banner">
<h1>Email Updates</h1>
</header>
<section>
<form id="form1" name="form1" method="post" action="<?=$_SERVER['PHP_SELF'];?>">
<input type="text" id="first-name" maxlength="100" autocorrect placeholder="First name" />
<input type="text" id="last-name" maxlength="100" autocorrect placeholder="Last name" />
<input type="text" id="email" maxlength="100" autocorrect placeholder="Email address" />
<button type="submit" id="submit" class="oneup">Submit</button>
</form>
</section>
</article>
我需要什么样的代码才能提供简单的csv文件?
答案 0 :(得分:1)
如果(如果)提交表单(正确),请执行以下操作:
if( $fp = fopen('file.csv', 'w') )
{
fputcsv($fp, $_POST);
}
fclose($fp);
答案 1 :(得分:0)
提交此表单时,它将填充$ _POST数组。
因此,您应该添加一些处理提交值的PHP代码。
例如:
<?php
if(isset($_POST['submit']))
{
$myfile = fopen('file.csv', 'w');
fputcsv($myfile,
array($_POST['first-name'], $_POST['last-name'], $_POST['email']));
fclose($myfile);
}
?>
答案 2 :(得分:0)
与djot的答案类似,我会用这个:
if( $fp = fopen('file.csv', 'w') ){
fputcsv($fp, print_r($_POST, true));
}
fclose($fp);
请注意带有true标志的print_r,因为这使它更具人性化。
如果你真的想把它写成CSV,只需使用:
$data = implode(',' $_POST);
if( $fp = fopen('file.csv', 'w') ){
fputcsv($fp, $data);
}
fclose($fp);