動的コンテンツを生成するページがあり、ユーザーの選択に基づいてフォーマットが出力されます。
たとえば、ユーザーが HTML 形式を選択した場合、ページは HTML ページとして表示されます。それはPDF形式と同様にうまく機能します。
問題は、ユーザーが Excel 形式を選択し、Excel ファイルをサーバーに保存する必要がある場合です。
ユーザーが Excel 形式を選択すると、ファイルは Excel で生成されますが、サーバーに保存する代わりに [名前を付けて保存] ダイアログ ボックスが表示されますが、サーバーに保存するファイルが必要です。
どんな入力でも大歓迎です。CF2016を使用しています。
コードサンプル:
<cfsavecontent variable="Page">
<cfif CompareNoCase(FORM.format,"xls")>
<cfsetting enablecfoutputonly="Yes">
<cfheader name="Content-Disposition" value="attachment;filename=""#VARIABLES.vcFilename#""">
<cfcontent type="application/vnd.msexcel">
<cfif>
<table><tr><td><cfoutput>#somecontent#</cfoutput></td></tr>...</table>
</cfsavecontent>
<cfif CompareNoCase(FORM.format,"xls")>
<cffile
action="write"
destination="d:\somedir\"
file="#VARIABLES.vcFileName#"
output="#Page#"
nameconflict="overwrite">
<cfif>