ics download
https://gist.github.com/jakebellacera/635416
om een ics bestand te maken.
Als ik dit bestand (exp2ics.php) direct aanroep dan begint de browser meteen met downloaden (wat goed is)
Nu wil ik uiteraard mijn variabelen hierin opnemen.
Ik doe dit met ajax door onderstaande functie:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
$(document).ready(function() {
$(document).on("click","#ics_submit",function(e){
var id = $(this).data('id');
$.ajax({
type: "POST",
url: './ajax/exp2ics.php',
data: {id: id}
});
return false;
});
});
$(document).on("click","#ics_submit",function(e){
var id = $(this).data('id');
$.ajax({
type: "POST",
url: './ajax/exp2ics.php',
data: {id: id}
});
return false;
});
});
Hij vult nu het bestand goed maar het download nu niet meer het ics bestand nadat ik op de link klik (#ics_submit) om deze te downloaden.
Maak ik ergens een denkfout? Als ik exp2ics.php nu direct aanroep dan download hij dit bestand met php extensie ipv ics.
Hier snap ik werkelijk niets van. Hoe/waarom wil je een bestand dat in PHP gegenereerd wordt nu nog in de browser gaan bewerken?
Als ik op button #ics_submit klik wil ik dat de browser automatisch een ics bestand download.
Op dit moment krijg ik wel een response (zie ik in chrome developer tools) maar download hij niet een ics bestand. Hoe zorg ik ervoor dat dit bestand wordt gedownload?
Jij wilt aan de hand van het id zorgen dat het ics bestand de benodigde info bevat, right?
Code (php)
1
2
3
4
2
3
4
<form action="exp2ics.php" method="post">
<input type="hidden" name="id" value="222" />
<input type="submit" value="Download" />
</form>
<input type="hidden" name="id" value="222" />
<input type="submit" value="Download" />
</form>
Gewijzigd op 22/09/2013 21:30:00 door Frank Nietbelangrijk
Daarom dacht ik aan ajax.
Als ik op een button klik dan wil ik mijn variabele (data-id) gebruiken om data uit mijn database te halen om vervolgens de benodigde info te vullen.
Toevoeging op 22/09/2013 21:33:58:
N K op 22/09/2013 21:29:36:
Maar ik wil geen redirect gebruiken, ik wil op dezelfde plek op mijn pagina blijven...
Daarom dacht ik aan ajax.
Daarom dacht ik aan ajax.
Je kunt vanuit javascript geen bestanden laten downloaden.
Ik heb het nu zoals je had aangegeven. Dat werkt wel.
Weer wat geleerd..