フォームを処理し、値を CSV ファイルに出力する PHP ルーチンがあります。ヘッダー行を作成するために使用array_keys()
しています(ある場合はスキップされます)。もちろん、私のフォームには送信ボタンが含まれているため、最後のヘッダー用語が「送信」であることを除いて、すべてが完全に機能します。したがって、データは次のようになります。
name,email,cell,dob,study,submit
"Temp One",fred@gmail.com,646-325-1111,1995-03-31,8,Submit
"Temp Two",tom@gmail.com,646-325-2222,1995-03-31,4,Submit
ヘッダーとデータの両方から送信ボタンを省略するにはどうすればよいですか?
これが私のコードです:
if(isset($_POST['submit'])) {
$data = array_values($_POST); // get only values
$headers = array_keys($_POST); // keys are headers
if( $fp = fopen('data.csv','a+')) {
$line = fgets($fp);
if(!$line == $headers) {
fputcsv($fp, $headers);
fputcsv($fp, $data);
}
else
{
fputcsv($fp, $data);
}
fclose($fp);
header('Location: thanks.php');
}
}