【发布时间】:2017-04-04 08:12:14
【问题描述】:
我有这个 PHP 脚本(见下文),它允许我使用 SQL 查询生成 CSV 文件并将其下载到我的本地机器,但我如何将它保存到远程服务器 (http://myserverblabla.com/uploads) 同时在那边留个备份?是否可以修改我现有的脚本来实现这一点?
include 'class/database.class.php';
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"filename.csv\";" );
header("Content-Transfer-Encoding: binary");
$database = new Database();
try{
// Select query
$database->query("SOME SQL QUERY");
$data = $database->resultset();
$fp = fopen('php://temp', 'r+');
foreach ($data as $row) {
if (! isset($ch)) {
foreach ($row as $header => $value) {
if (isset($ch))
$ch .= ",";
else
$ch = "";
$ch .= '"' . addslashes($header) . '"';
}
}
fputcsv($fp, $row, ",", '"');
}
rewind($fp);
$csv = fread($fp, 1048576);
fclose($fp);
echo $ch . PHP_EOL . rtrim($csv, PHP_EOL);
}
catch(PDOException $e){
echo json_encode((object)['error'=>true,'message'=>$e->getMessage()]);
}
【问题讨论】:
-
myserverblabla.com/uploads 的规格是什么?你能在里面ssh吗?你可以在那里使用php吗?要下载 cvs,你需要登录或类似的吗?