强制下载使用php创建的ics文件,其中包含从用户输入收集的AJAX请求发送的POST数据
我正在尝试从用户输入创建一个可下载的.ics文件 我正在努力解决的问题是下载部分。 代码: jQuery强制下载使用php创建的ics文件,其中包含从用户输入收集的AJAX请求发送的POST数据,php,jquery,html,ajax,download,Php,Jquery,Html,Ajax,Download,我正在尝试从用户输入创建一个可下载的.ics文件 我正在努力解决的问题是下载部分。 代码: jQuery function sendOnSuccess(){ var name = jQuery('.member.selected .name').text(); //day - only the number var day = jQuery('.member.selected .calendar .date').text().replace(/\D+/g, '');
function sendOnSuccess(){
var name = jQuery('.member.selected .name').text();
//day - only the number
var day = jQuery('.member.selected .calendar .date').text().replace(/\D+/g, '');
var month = jQuery('.member.selected .calendar .month').text();
var year = jQuery('.member.selected .calendar .year').text();
var time = jQuery('.member.selected .slots .selected').text();
//get everything before :
var hour = jQuery('.member.selected .slots .selected').text().substring(0, time.indexOf(":"));
//get everything after :
var minutes = jQuery('.member.selected .slots .selected').text().split(":").pop();
var number = jQuery('.member.selected .form input[name="tel"').val();
jQuery.ajax({
url: 'download_ics.php',
type: 'POST',
data: {
name : name,
day : day,
month : month,
year : year,
time : time,
hour : hour,
minutes : minutes,
number : number
},
success: function(output){
// output works
}
});
}
下载_ics.php
<?php
require_once("ICS.php");
header('Content-Type: text/calendar; charset=utf-8');
header('Content-Disposition: attachment; filename.ics');
$name = $_POST["name"];
$day = $_POST["day"];
$month = $_POST["month"];
$year = $_POST["year"];
$time = $_POST["time"];
$minutes = $_POST["minutes"];
$hour = $_POST["hour"];
$number = $_POST["number"];
$date = strtotime("$year-$month-$day $hour:$minute$timeofday");
$ics = new ICS(array(
'description' => $name,
'dtstart' => $date,
'dtend' => $date . '+ 30 minutes'
));
echo $ics->to_string();
if($number){
//die(' Success');
die();
}else{
die("failed to create");
}
你能给我们看看ICS.php吗?is有文档吗
我会从改变开始
header('Content-Disposition: attachment; filename.ics');
到
是的,文档可以在这里找到:还有ICS.php(),但我似乎找不到解决方案。你就不能用表格吗?如果您需要使用ajax,它会更复杂。尝试一些答案
header('Content-Disposition: attachment; filename.ics');
header('Content-Disposition: attachment; filename="filename.ics"');