Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Ordine recordset "al volo"

    Domandina....

    Uso questo codice per crearmi una lista di file contenuti in una specifica cartella:
    codice:
    <% 
    const stringa = 8 
    set fso = CreateObject("Scripting.Filesystemobject") 
    set rst = CreateObject("ADODB.Recordset") 
    set folder = fso.getFolder(Server.MapPath("\risorse)) 
    
    rst.CursorLocation = 3 
    rst.Fields.Append "Nome", stringa 
    rst.Fields.Append "Peso", stringa
    rst.Fields.Append "Data", stringa 
    rst.Open 
    
    for each f in folder.files 
    rst.AddNew 
    rst.Fields("Nome").value = f.Name 
    rst.Fields("Peso").value = f.Size 
    rst.Fields("Data").value = f.DateCreated
    next 
    rst.movefirst 
    %>
    Solo che quando richiamo la lista con
    codice:
     <% while not rst.EOF %>
    ....
    <% rst.movenext 
    wend %>
    Lui ordina i file per nome. Come posso farglieli ordinare per Data???
    :master:

    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

  2. #2
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Un piccolo esempio che potrai facilmente personalizzare:

    codice:
    <%
    
    ' definizione del recordset
    set custRs = Server.CreateObject("ADODB.Recordset")
    custRs.Fields.Append "nome", 200, 300 ' adVarChar
    custRs.Fields.Append "dimensione", 2, 4 ' smallint
    custRs.Fields.Append "data", 7 ' Date
    custRs.Open
    
    ' popolamento
    Set FileObject = Server.CreateObject("Scripting.FileSystemObject")
    StrPath = Server.MapPath("/")
    
    Set f = FileObject.GetFolder(strPath)
    Set fc = f.SubFolders
    
    For Each f1 in fc
            custRs.AddNew
    custRs("nome") = f1.name
      custRs("data") = f1.DateCreated
    custRs("dimensione") = f1.size / 1024
    Next
    
    Set fc = Nothing
    Set f = Nothing
    Set FileObject = Nothing
    
    ' Ordino in base al campo data
    custRs.Sort = "data DESC"
    
    Response.write ("<table border=1>")
    Response.write ("<tr><th>Nome<th>Dimensione<th>Data di creazione")
    
    ' Mostro il recordset appena ordinato
    Do until custRs.eof
      Response.Write ("<tr><td>" & custRs("nome") )
      Response.Write ("<td>" & custRs("dimensione") & " KB" )
      Response.Write ("<td>" & custRs("data") )
      custRs.movenext
    loop
    
    Response.write ("</table>")
    ' libero risorse
    custRs.Close
    set custRs = Nothing
    
    %>
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  3. #3
    Infatti avevo appena risolto con
    rst.Sort = "Data DESC"

    M'hai battuto sul tempo!!!!
    Grazie comunque.
    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

  4. #4
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Prego comunque
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.