cfoutput зацикливание на одном имени файла - PullRequest
2 голосов
/ 17 марта 2010

Согласно LiveDocs для cfoutput в cf7 :

Когда вы указываете атрибут запроса, этот тег зацикливается на строках запроса и производит вывод для каждой строки в пределах диапазона, указанного значениями startRow и maxRows

Я пытаюсь получить имена файлов в каталоге. Я использую cfdirectory, чтобы получить запись запроса, а затем запросить запрос с помощью cfquery. Мой cfoutput зацикливает количество строк запроса, но каждый раз выдает одно и то же имя файла:

Выход: альтернативный текст http://img80.imageshack.us/img80/9294/onefile.png

Код:

  <!-- list files in pass-fail directory -->
  <cfset fileLocation = "c:\YouTubeUploader\pass-fail">
  <cfdirectory 
    action = "list"
    directory = "#fileLocation#"
    name = "files"
    > <!-- master query -->

     <cfdump var="#files#" label="files in pass-fail" > 
      <!-- displays the query record set returned from cfdirectory -->

      <!-- detail query generates a new query result set - the names of the files  -->
        <cfquery dbtype="query" name="detail"> 
SELECT files.name
 FROM files
      </cfquery>

     <!-- output all file names -->
     <cfoutput query="detail"  startRow = "1"
            maxRows = "5">
     #files.Name#<br>  
       </cfoutput>

Почему cfoutput остается на этом одном имени файла?

Ответы [ 2 ]

5 голосов
/ 17 марта 2010

причина в том, что cf думает, что вам нужно значение имени запроса файлов, так как вы назвали свою переменную в подробном запросе files.name.измените запрос запроса на:

SELECT name FROM files

, а затем измените его на:

<cfoutput query="detail"  startRow = "1" maxRows = "5">#detail.name#<br></cfoutput>

и все должно быть круто.

0 голосов
/ 17 марта 2010

В вашем цикле запроса cfoutput измените # files.Name # на # detail.Name #, и это должно сработать.

...