не получить желаемую загрузку - PullRequest
1 голос
/ 19 октября 2010

Я использую CF-8, Windows-XP и IE 5.5.

Я использую простой тег, а именно. но вывод, который я получаю, является чистым гибберихом наряду с текстом файла (документ слова)

upld.cfm

   <cffile action="read" file="C:\ColdFusion8\wwwroot\Proj\updl\fileDisk\SOL.doc" variable="fileDisk"   >
          <cfoutput>#fileDisk#
         </cfoutput>

<cfoutput>
<form  name="upload" method="post" action="actionUpld.cfm?form_Num=#form_Num#" enctype="multipart/form-data">

<input name="uplForm" id="uplForm" type="file" >
<input type="submit" name="submitUpld" value="Save" onclick="" >

</form>
</cfoutput>

actionUpld.cfm

<cftry>
<cfscript>         
             newUPL = CreateCFC('cfcs.projDB');     
             newUPL.Implementation_Num =    url.form_Num;
             newUPL.uplForm = form.uplForm;
             newUPL.putUPL();        
</cfscript>
 <cfcatch type="any" >
        <cfoutput >
            <hr>
             <h4>Other Error: #cfcatch.Type#</h4>
                <li><b>Message:</b> #cfcatch.Message#
                <li><b>Detail:</b> #cfcatch.Detail#
                <li><b>Error Code:</b> #cfcatch.ErrorCode#
           </cfoutput>
       </cfcatch>
</cftry>
<cflocation url="upld.cfm??form_Num=#form_Num#" >

Как лучше всего использовать cffile для вывода файла?

Также, когда я смотрю на БД, я получаю имя файла как

"C:\ColdFusion8\runtime\servers\coldfusion\SERVER-INF\temp\wwwroot-tmp\qeq344.tmp"
How to correct it?

Есть ли лучший способ.

1 Ответ

2 голосов
/ 19 октября 2010

Кроме того, когда я смотрю на БД, я получить имя файла как C: \ ColdFusion8 \ runtime \ servers \ coldfusion \ SERVER-INF \ temp \ wwwroot-tmp \ qeq344.tmp

Это временное имя файла, назначенное вновь загруженным файлам. На вашей странице действий вам нужно использовать cffile action = "upload" ... , чтобы переместить этот временный файл в нужное место. Это заполнит структуру с именем CFFILE подробностями о загруженном файле, такими как CFFILE.serverFile и CFFILE.serverDirectory. (Или используйте атрибут «result» для вывода сведений на любое имя структуры, которое вы выберете.)

Как лучше всего использовать cffile для вывода файл?

Вы не можете отображать двоичные файлы (например, * .doc) с помощью cfoutput. Для отображения / загрузки таких файлов в браузере используйте cfcontent

...