フォームからデータを取得し、PHP経由でCSVファイルに保存するのに少し苦労しています。このコードは機能していないので、問題を解決する方法が不足しています。 CSVファイルに保存する方法に問題はありますか?私はあなたの助けに感謝します。PHPを使用してHTMLフォームのデータを.CSVファイルに保存
コードはこのように動作するはずです。ユーザーがHTMLフォームにデータを入力したいと思っています。それから、AJAXとPHPを使って、それをcsvファイルに保存したいと思います。保存は機能しません - ファイルは空のままです。
<!DOCTYPE html>
<html>
<body>
<h2>AJAX</h2>
<script>
<?php
if(isset($_POST['submit'])){
//collect form data
$name = $_POST['name'];
$email = $_POST['email'];
//check name is set
if($name ==''){
$error[] = 'Name is required';
}
//check for a valid email address
if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
$error[] = 'Please enter a valid email address';
}
//if no errors carry on
if(!isset($error)){
# Title of the CSV
$Content = "Name, Email\n";
//set the data of the CSV
$Content .= "$name, $email\n";
# set the file name and create CSV file
$FileName = "sth.txt"//"formdata-".date("d-m-y-h:i:s").".csv";
// header('Content-Type: application/csv');
// header('Content-Disposition: attachment; filename="' . $FileName . '"');
echo $Content;
exit();
}
}
//if their are errors display them
if(isset($error)){
foreach($error as $error){
echo "<p style='color:#ff0000'>$error</p>";
}
}
?>
</script>
<form action='' method='post'>
<p><label>Name</label><br><input type='text' name='name' value=''></p>
<p><label>Email</label><br><input type='text' name='email' value=''></p>
<p><input type='submit' name='submit' value='Submit'></p>
</form>
</body>
</html>
あなたはそれによって何を意味するかが動作していませんか?何かエラーがありますか? – Erick
この '$ FileName =" sth.txt "//" formdata - "。date(" dmyh:i:s ")。"。csv ";'はあなたに構文エラーを投げているはずです。 PHPがスクリプトタグ内にラップしています。さらに、あなたは何も書いていません。 –
.csvファイルに保存する実際のコードはどこですか? – Dadani