如何使用Javascript创建csv文件并将其上载到服务器文件夹?
我的程序采用2D数组,并将其转换为csv,可按如下方式下载:如何使用Javascript创建csv文件并将其上载到服务器文件夹?,javascript,jquery,Javascript,Jquery,我的程序采用2D数组,并将其转换为csv,可按如下方式下载: var csvRows = []; for (var i = 0; i < twoDiArray.length; ++i) { for (var j = 0; j < twoDiArray[i].length; ++j) { twoDiArray[i][j] = '\"' + twoDiArray[i][j] + '\"'; // Handle elements that contain comm
var csvRows = [];
for (var i = 0; i < twoDiArray.length; ++i) {
for (var j = 0; j < twoDiArray[i].length; ++j) {
twoDiArray[i][j] = '\"' + twoDiArray[i][j] + '\"'; // Handle elements that contain commas
twoDiArray[i][j] = twoDiArray[i][j].replace(/ /g, '%20');
}
csvRows.push(twoDiArray[i].join(','));
}
var csvString = csvRows.join('\r\n');
var a = document.createElement('a');
a.href = 'data:attachment/csv,' + csvString;
a.target = '_blank';
a.download = 'MD_Database_with_Coords.csv';
document.body.appendChild(a);
a.click();
var csvRows=[];
对于(变量i=0;i
然后如何保存此文件,而不将其再次上载到服务器文件夹中,以便在之后立即使用另一个窗口(使用php访问cvs文件)加载它。我的新窗口的php代码是:
<?php
//opens file
$file = fopen("MD_Database_with_Coords.csv","r");
$array_of_array = array();
$counter = 0;
//reads entries
while(!feof($file)) {
$array_entry = fgetcsv($file);
//ignore first line
if ($array_entry[0] == "ID") {
continue;
}
//fill array with entries
if ($array_entry != NULL) {
$array_of_array[$counter] = $array_entry;
}
$counter++;
}
fclose($file);
?>
如果您只是上传它以向用户显示,那么为什么您首先要尝试上传它?它利用了有查询限制的google geocode API。为了让用户立即加载显示,所有数据库都必须事先计算,这样用户就不必等待。因此,如果管理员决定使用一个新数据库,他们只需等待coords计算一次。然后文件被上传到服务器,所有未来的显示都将立即显示。