2011-08-05 2 views
1

Я пытаюсь сделать этоColdfusion CFSET и переменная сфера

<cfset noncooperativevariable = #serverfile#> 

и я получаю serverfile не определенную ошибку. Когда я пытаюсь использовать правильный диапазон изменения

<cfset noncooperativevariable = #CFFILE.serverfile#> 

который возвращает ошибку.

Вы попытались разыменовать скалярную переменную типа class java.lang.String как структуру с элементами.

Edit:

<cffile action="upload" filefield="fileUpload" destination="#destination#" nameConflict="makeUnique" result="upload"> 
<cfset noncooperativevariable = #fileUpload.serverfile#> 
+0

Вы делаете это непосредственно после загрузки CFFILE? –

+0

Да, я добавил еще несколько кодов, чтобы лучше понять, что я делаю. – John

+2

Это странная ошибка, и я думаю, может быть, красная селедка. В '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' 'upload' в качестве значения 'result ='. – ale

ответ

3

При использовании cffile тега, результаты дефолта в cffile структуру в Вашей области переменных. Поэтому, если вы загружаете файл со следующим кодом:

<cffile action="upload" filefield="fileUpload" destination="#destination#" nameConflict="makeUnique" /> 

Результаты доступны через cffile структуры в Вашей области переменных. Имя файла будет ссылаться следующим образом:

<cfset cooperativeVariable = cffile.serverfile /> 

В сниппета размещен, вы с помощью атрибута «результата», который будет разместить свои результаты cffile в структурах имени загрузки вместо cffile, так что вы бы получите имя файла следующим образом:

+0

Я подтвердил ваш ответ, но только потому, что вы указали на ошибку атрибута результата, область по умолчанию IS cffile, а не файл. –

+0

.. и 'файл' устарел в течение некоторого времени. – Leigh

+0

blast! I был используя cf8 слишком долго 8] спасибо, ребята –

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