Salve a Tutti Dopo un anno che ho cambiato lavoro (progetto tetti e strutture in legno) questa sera mi è tornata la voglia di scrivere qualche riga di codice e così se a qualcuno interessa metto a disposizione il codice di un semplice motore di ricerca per il proprio sito.
Buone ferie![]()
Pagina che richiama la classe
Classe contenuta nel file Motore.aspcodice:<% Dim i Set MioMotore = New Motore MioMotore.Cerca("Una Due o N parole") For i = 1 to MioMotore.Numerofile Response.write " NomeFile = " & MioMotore.FileName(i) Response.write " PathFileLink = " & MioMotore.PathFile(i) Response.write " Estensione File = " & MioMotore.ExtFile(i) Response.write " " Next %>
libero e personalizzabile a proprio gusto e piacere
codice:<% Class Motore Private MatFile() Private i Public Numerofile Public function Cerca(Testo) Dim fso Set fso = CreateObject("Scripting.FileSystemObject") Call Esplora (fso,Testo,Server.MapPath("."),"") Set fso = Nothing End function Public Function FileName(i) FileName = MatFile(0,i) End Function Public Function PathFile(i) PathFile = MatFile(1,i) End Function Public Function ExtFile(i) ExtFile = MatFile(2,i) End Function Private Function FileExt(NomeFile) FileExt = Right(NomeFile,Len(NomeFile)-instrrev(NomeFile,".")) End Function Private Sub Esplora(fso,Testo,Cartella,Path) Dim fol Dim f Dim SubFols Dim TestoCerca Dim TestoTrovato Dim j Set fol = fso.GetFolder(Cartella) Set SubFols = fol.subfolders For each SubFol In SubFols Call Esplora(fso,Testo,SubFol.Path,Path & "/" & SubFol.Name) Next Set Files = fol.files For each File In Files Set f = fso.OpenTextFile (File.Path,1) If not f.AtEndOfStream Then TestoTrovato = 0 TestoFile = f.readall TestoCerca = Split(Testo," ") For j = 0 to Ubound(Testocerca) If Instrrev(TestoFile,Testocerca(j)) Then TestoTrovato = TestoTrovato+1 End If Next If TestoTrovato = Ubound(Testocerca)+1 Then i = i + 1 Redim Preserve MatFile(2,i) MatFile(0,i) = File.Name MatFile(1,i) = Path MatFile(2,i) = FileExt(File.Name) Numerofile = Numerofile + 1 End If End If Set f = nothing Next End Sub End Class %>

Rispondi quotando

