데이터를 CSV로 내보내고 "\r\n"
을 사용하는 동안 머리글 줄 아래의 새 줄에 각 줄의 데이터를 출력하는 대신 한 줄로 출력합니다 , 즉 :CSV로 내보내기는 새 줄 대신 한 줄에 데이터를 넣습니다.
name | address | phone | email | greg | 2 old street | 09236462942 | [email protected] | michael | 2 new street | 0927464623 | [email protected] | ...
코드는 다음과 같다 :
JS에게
var file = "Database.csv";
allData=name+","+address+","+phone+","+email;
allData=allData.replace(/[\\]/g,'');
saving();
function saving(){
$.ajax({
type: 'POST',
url: 'save.php',
timeout: 5000,
data: { data: allData, filename: file },
error: function() {localStorage["allData"]=allData; wiadomosc("Internet conection error. But don't worry, your data will be stored when conection will be stable.");},
success: function() {localStorage["allData"]="";}
});
}
PHP를
<?php
if(isset($_POST["filename"]) == true && isset($_POST["data"]) == true){
$fp = fopen($_POST["filename"], "a+");
if($fp !== null){
fputs($fp, $_POST["data"] . "\r\n");
fclose($fp);
}
}
?>
, 데이터 전에 줄 바꿈을 넣어 그 방법을 시도 줄 바꿈을 포함하도록 이전에 작성된 데이터에 의존하지 마십시오. fputs ($ fp, "\ r \ n". $ _POST [ "data"]); 또한 POST 매개 변수를 사용하여 파일을 대상으로 지정할 수 없도록해야합니다. – ajshort
@ajshort : 시도해 보았지만 아래의 데이터는 CSV의 맨 오른쪽으로 이동합니다. 공개적으로 사용 가능한 앱이 아니라 내부 데이터 수집으로 사용되는 파일을 지정했습니다. – Dave