2012-05-18 3 views
0

У меня нет доступа для внесения каких-либо изменений администратору coldfusion, поскольку я нахожусь на общем хосте. Но я запускаю cf9 и пытаюсь использовать тег для нескольких загрузок изображений. Все выглядит хорошо, пока я не нажму кнопку «Загрузить» и не вернусь к ошибке 302. После некоторых исследований я обнаружил, что это связано с тем, что эта часть моего кода находится за логином администратора, а переменные сеанса не пропускаются через флеш с тегом, а затем происходит перенаправление на страницу входа в систему. Из того, что я видел, решение этого заключается в том, чтобы убедиться, что SESSIONMANAGEMENT="Yes" в файле Application.cfm и добавьте ?#urlEncodedFormat(session.urltoken)# к URL-адресу, где предполагается загрузка. Единственное, что я видел, это войти в администратора ColdFusion и изменить тип управления сеансом. Либо Java EE servlet session management, либо ColdFusion session management, которого я не могу.Проблемы с переменными сеанса и cflileupload

Я надеялся, что есть еще другие варианты, чтобы заставить это работать, или, может быть, я делаю что-то неправильно, что кто-то может указать.

Вот пример моего кода:

test.cfm

<script> 
var foo = function(result) 
{ 
    alert(ColdFusion.JSON.encode(result)); 
} 
</script> 
<cffileupload url="uploadFiles.cfm?#urlEncodedFormat(session.urltoken)#" width=600 height=400/> 

uploadFiles.cfm:

<cffile action="uploadAll" destination="#Application.filePath#Gallery\" nameconflict="makeunique"> 
<cfset str.STATUS = 200> 
<cfset str.MESSAGE = "passed"> 
<cfoutput>#serializeJSON(str)#</cfoutput> 

Путь назначения является правильным абсолютным путем.

Редактировать: Был ли этот вопрос отправлен дважды мной? Если да, то почему я был заблокирован?

+0

Я принял бы ответ, если один работал. В то время как каждый, кто внес свой вклад, дал хорошее представление и оказал хорошую помощь, в моей ситуации ничто не было правильным. В итоге я использовал почти совершенно другое решение. Спасибо. –

+0

В этом случае приемлемо и целесообразно опубликовать свой собственный ответ и принять его. – Blazemonger

+0

У меня недостаточно рейтинга, чтобы ответить на мой собственный вопрос. Мое решение состояло в том, чтобы просто создать более 1 входной файл, а не несколько файлов. На самом деле это не решение, просто отказ. –

ответ

1

прилагаемого маркер сеанса к URL обходного пути не требуется после того, как CF9.0.1

Повышения в ColdFusion 9.0.1

В ColdFusion 9.0.1, контроль FileUpload проходит сеанс информацию неявно на целевую страницу , если управление сеансом включено либо в Application.cfc, либо Application.cfm.

http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec18238-7fd0.html

+0

Я не уверен, какая версия CF я использую вне CF9. Я могу иметь 9.0.1 или просто 9.0, просто не уверен. Есть ли способ узнать, как в php, например, с phpinfo(). Я редко использую coldfusion, поэтому я не слишком хорошо знаком с этим. Кроме того, если я использую 9.0.1, какие другие причины могут возникнуть у меня, чтобы получить ошибку 302? –

+0

Версия сервера '9,0,0,251028' Я получил его от запуска

+0

времени, чтобы попросить вашего хоста обновиться. :) CF 9.0.1 содержит множество исправлений ошибок, а также новые функции! – Henry

Смежные вопросы