Thanks Bart, This looks great. I'll take some time today to look at all this.
Alexandre [email protected] wrote: > Hi Alexandre, > > I've got a PHP script which will return in JSON the url of the pdf, > something like: > > {success: true, > 'url':'http://test.intranet.rijkswaterstaat.nl/apps/geoservices/ms_tmp/layout_498c466c_441e_1.pdf'} > > then my download function will set it to the src of an iframe making use > of a download.php script (which sets the correct http headers for starting > a download dialog in the browser): > > download: function(response) { > var res = eval( "(" + response.responseText + ")" ); > this.iframe.dom.src = GeoServices.ScriptsUrl + > '/download.php?url='+res.url; > GeoServices.getApplication().hideWaitScreen(); > }, > > The iframe was created like: > > this.iframe = Ext.get(Ext.DomHelper.append(document.body, > Ext.apply({tag:'iframe', style: 'display:none', > src:(Ext.isIE&&Ext.isSecure)?Ext.SSL_SECURE_URL:''},true))); > > So actually I am using an iframe and not a form (the form was from the top > of my head). > > download.php is something like: > > <?php > > header("Cache-Control: cache, must-revalidate"); > header("Pragma: public"); > > function getContentType($filename) { > $path_info = pathinfo($filename); > $extension = strtolower($path_info['extension']); > if ($extension == 'pdf') { > return 'application/pdf'; > } else if ($extension == 'xml') { > return 'text/xml'; > } else { > return 'application/octet-stream'; > } > } > > if (isset($_GET['url'])) { > > include_once(dirname(__FILE__)."/../../chameleon/htdocs/common/http/HTTPClient.php"); > $oHTTPClient = new HTTPClient("", 30); > header( "Content-type: application/pdf" ); > header( "Content-Disposition: attachment; filename=kaart.pdf" ); > echo $oHTTPClient->doGET($_GET['url']); > > } else { > header( "Content-type: ".getContentType($_POST['filename'])); > header( "Content-Disposition: attachment; filename=".$_POST['filename'] ); > echo stripslashes($_POST['stream']); > } > > ?> > > Best regards, > Bart > > >> Hi Bart, >> >> Do you mind showing me a snippet of what you did ? >> >> Many thanks, >> >> Alexandre >> >> [email protected] wrote: >> >>> I did not find a way to do this with AJAX. So if you find one, I'd be >>> interested :-) but my search back then indicated this is not possible. >>> >>> So I ended up doing the following: >>> >>> 1) my script sends the url to the pdf >>> 2) I set the url as the action of a form and submit the form >>> 3) the download dialog starts >>> >>> I also had to have a static form in my HTML page instead of inserting it >>> with javascript, since otherwise IE would end up opening a new window. >>> >>> Best regards, >>> Bart >>> >>> >>> >>>> Dear users, >>>> >>>> Still looking for a way to achieve this. Does anyone have a hint ? >>>> >>>> Alexandre >>>> >>>> Alexandre Dube wrote: >>>> >>>> >>>>> Hi list, >>>>> >>>>> Can I load a script that returns a pdf using loadURL() ? It >>>>> currently >>>>> returns "Unhandled request return OK" but if I copy the URL in a new >>>>> tab >>>>> I get my pdf correctly. Any idea what may be wrong ? >>>>> >>>>> >>>>> >>>>> >>>> -- >>>> Alexandre Dubé >>>> Mapgears >>>> www.mapgears.com >>>> >>>> _______________________________________________ >>>> Users mailing list >>>> [email protected] >>>> http://openlayers.org/mailman/listinfo/users >>>> >>>> >>>> >>> >>> >> -- >> Alexandre Dubé >> Mapgears >> www.mapgears.com >> >> >> > > > -- Alexandre Dubé Mapgears www.mapgears.com _______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
