Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

MOTORE RIECRCA INTRANET

Cerchi consigli per migliorare il tuo sito? Vuoi aprire un sito in poco tempo?
Discuti con altri webmaster, chiedi chiarimenti ed opinioni in tutta libertà.
Lo spam verrà cancellato.

MOTORE RIECRCA INTRANET

Messaggioda spetznatz » dom mag 10, 2009 2:18 pm

Salve a tutti, avrei bisogno, cortesemente, di sapere come è possibile realizzare un motore di ricerca intranet che funzioni,attraverso la ricerca dei nomi dei titoli del documento e nel suo contenuto.
Ho provato ad utilizzare ilservizio di incizzazione di windows, solamente che al momento della creazione pagina web in asp, per la visualizzazione dei risultati, i file che compaiono nell'elenco, non si riescono a cliccare, ossia è presente l'ipertext, ma non funziona. Il secondo problema è quello che quando si visualizza la pagina da un'altro pc in rete, digitando la parola di ricerca, la pagina web risponde che non sono presenti i risultati.
Chiedo per questo se è possibile trovare una soluzione o sapere come è possibile realizzare un motore che svolga da solo le funzioni di indicizzazione etc.. magari attraverso script già realizzati, jn tutorial etc.
Lo scopo è quello di far trovare dei documenti in rete intranet, tramite il oro titolo o parole in essi contenute.

grazie sin da ora per la vostra collaborazione.

WINDOWS SERVER 2003 ENTERPRISE 64 BIT
Avatar utente
spetznatz
Neo Iscritto
Neo Iscritto
 
Messaggi: 6
Iscritto il: sab feb 21, 2009 2:03 pm

Re: MOTORE RIECRCA INTRANET

Messaggioda Al3x » dom mag 10, 2009 2:22 pm

i documenti di cui parli sarebbero contenuti in un file server oppure "sparpagliati" nei desktop dei pc della LAN?
è primavera finalmente! [:)]
Avatar utente
Al3x
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 7418
Iscritto il: sab gen 10, 2009 12:51 pm
Località: http://127.0.0.1/

Re: MOTORE RIECRCA INTRANET

Messaggioda spetznatz » dom mag 10, 2009 9:03 pm

I documenti sono tutti conservati in un file server,all'interno di una directory con le relative sottodirectory.
Avviando il sistema di indicizzazione di windows, creando il catalogo, la directory etc, funziona tutto, soltanto che ho problemi a riportare quei dati della query di windows in una pagina web che funga da motore.

Oppure come specificato, sono disposto ad abbandonare quel sistema, per trovarne un'altro che sia efficace per lo scopo.

Grazie
Avatar utente
spetznatz
Neo Iscritto
Neo Iscritto
 
Messaggi: 6
Iscritto il: sab feb 21, 2009 2:03 pm


Re: MOTORE RIECRCA INTRANET

Messaggioda Al3x » dom mag 10, 2009 9:47 pm

Esistono prodotti gratuiti ed a pagamento, tutto sta a te ed alle tue capacità nel configurare l'applicativo secondo le tue esigenze.
Della Microsoft esiste SharePortal Server, gratuiti ci sarebbe Nuch ed altri, è sufficiente che su google usi la stringa di ricerca
intranet free search engine

eccone alcuni
file spider http://www.utilstore.com/mercury/filespider.htm
mngosearch http://www.supershareware.com/info/mnogosearch.html (la versione base è gratuita)

alcuni nomi di prodotti considerati tra i migliori
SWISH-E, Dig, Lucene, and ASPSeek, mngosearch (già segnalato sopra)

search engine in ASP http://www.hotscripts.com/category/asp/ ... h-engines/

in questa pagina c'è un elenco di parecchi prodotti sia gratuiti che commerciali
http://www.ncsi.iisc.ernet.in/raja/netl ... earch.html

Mi fermo qui perché di materiale ce n'è a iosa, con un po di tempo e pazienza dovresti trovare ciò che ti occorre
è primavera finalmente! [:)]
Avatar utente
Al3x
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 7418
Iscritto il: sab gen 10, 2009 12:51 pm
Località: http://127.0.0.1/

Re: MOTORE RIECRCA INTRANET

Messaggioda spetznatz » lun mag 11, 2009 11:25 am

grazie di cuore, cercherò di reperire qualcosa di utile.
Fornirò notizie in merito successivamente.
Avatar utente
spetznatz
Neo Iscritto
Neo Iscritto
 
Messaggi: 6
Iscritto il: sab feb 21, 2009 2:03 pm

Re: MOTORE RIECRCA INTRANET

Messaggioda spetznatz » mar mag 12, 2009 11:12 am

Scusate ma non riesco a venirne a capo. Ho realizzato questa pagina sullas corta delle istruzioni fornite da microsoft, ma non funziona perché?
Questa pagina dovrebbe raccogliere i risultati dell'indice creato da windows da attivato (catalogo - directory).
IL NOME DEL CATALOGO E': prova, lotroverete inserito nel codice.
il codice della pagina in ASP è il seguente:

<%
' Force variable declaration.
Option Explicit

' Declare all variables.
Dim strQueryText
Dim strQueryField
Dim strSQL
Dim strName
Dim strValue
Dim objRS
Dim objField

' This is the list of index server variables that will appear.
' NOTE: You can customize the list of fields. For more information,
' see Microsoft Knowledge Base article Q288435.
Const strDisplayFields = "Rank, DocAuthor, DocAppName, DocTitle, FileName, Create, Access, Characterization, VPath"

' This is the default index server catalog for all Web content.
' NOTE: For information about how to customize this, see Microsoft
' Knowledge Base article Q288435.
Const strDataSource = "prova"

' Get the value of the user-submitted search query.
strQueryText = Request("QUERYTEXT")
' Set a default value if the user has not sumitted anything.
If Len(strQueryText) = 0 Then strQueryText = "N/A"
' Get the field the user wants to query against.
strQueryField = Request("QUERYFIELD")
' Set a default value if the user has not specified a field.
If Len(strQueryField) = 0 Then strQueryField = "DocTitle"
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=windows-1252" http-equiv="Content-Type" />
<title>Senza nome 2</title>
<style type="text/css">
.style1 {
margin-left: 59px;
}
</style>
</head>

<body>

<form method="post">
<input name="QUERYTEXT" type="text" value='<%=Request("QUERYTEXT")%>' /></form>
<form action='<%=Request.ServerVariables("URL")%>' method="post">
<select name="QUERYFIELD" style="width: 113px">
<option></option>
<option>DocAppName</option>
<option>caratterizzazione</option>
<option>nome file</option>
<option>DocAuthor</option>
<option>DocTitle</option>
</select><input class="style1" name="Submit1" type="submit" value="invia" /></form>
<%
' Build the SQL statement from the user-specified options.
strSQL = "SELECT " & strDisplayFields & " FROM SCOPE() " & _
"WHERE ((" & strQueryField & " LIKE '%" & strQueryText & "%') AND " & _
"((VPath NOT LIKE '%/_vti%') AND (VPath NOT LIKE '%/_private%')))"

' Create a recordset object.
Set objRS = Server.CreateObject("ADODB.Recordset")

' Open the recordset using the SQL string with the index server provider.
objRS.Open strSQL,"PROVIDER=MSIDXS;DATA SOURCE=" & strDataSource

' Are there any records to show?
If objRS.EOF Then

' Show a default message if nothing was found.
Response.Write "No Documents were Found." & vbCrLf

' Otherwise...
Else

' Start a table.
Response.Write "<table border=""1"">" & vbCrLf

' Start the row for the header section.
Response.Write "<tr>" & vbCrLf
' Loop through the fields collection.
For Each objField in objRS.Fields
' Get the field's name.
strName = objField.Name
' If the field has a name, escape it for HTML.
If Len(strName) > 0 Then strName = Server.HTMLEncode(strName)
' Output the field name as a table header.
Response.Write "<th>" & strName & "</th>" & vbCrLf
Next
' End the row for the header section.
Response.Write "</tr>" & vbCrLf

' Loop through all the records.
While Not objRS.EOF
' Start a row in the data section.
Response.Write "<tr>" & vbCrLf
' Loop through the fields collection.
For Each objField in objRS.Fields
' Get the field's value.
strValue = objField.Value
' Check for null values.
If Len(strValue) > 0 Then
' If the value is not null, escape it for HTML.
strValue = Server.HTMLEncode(strValue)
Else
' Otherwise, make it a non-breaking space character.
strValue = "&#xa0;"
End If
' Output the field value as table data.
Response.Write "<td>" & strValue & "</td>" & vbCrLf
Next
' End a row in the data section.
Response.Write "</tr>" & vbCrLf
' Move to the next record.
objRS.MoveNext
Wend
End If
%>
</body>

</html>


QUESTO E' IL LINK DOVE HO TOVATO IL CODICE: http://support.microsoft.com/kb/928700/it#mtDisclaimer

QUI DSOTTO INVECE UN'ALTRO CODICE SIMILE, CHE FUNZIONA PARZIALMENTE NELLA VISUALIZZAZIONE, MA AL MOMENTO DEL CLICK NON APRE NULLA.

<%@ Language="VBScript" %>
<% Option Explicit %>
<html>
<head>
<title>ASP 101's Index Server Article - Advanced Search Page</title>
<meta name="description" content="ASP 101's Index Server Article - Advanced Search Page">
<meta name="keywords" content="ASP 101's Index Server Article - Advanced Search Page">
<meta name="author" content="John Peterson">
</head>
<body>

<div align="center">
<table border="1" id="table1" width="416" style="border-width: 0px">
<tr>
<td style="border-style: none; border-width: medium">

<p align="left">
<b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MOTORE&nbsp; DI&nbsp; RICERCA</b></p>
</td>
</tr>
</table>
</div>

<form action="default.asp" method="get">
<p align="center">
<input type="text" name="query" size="51" />
<input type="submit" value="Ricerca" name="Ricerca" /> </p>
</form>
<div align="center">
<table border="1" id="table2" width="265" style="border-width: 0px">
<tr>
<td style="border-style: none; border-width: medium">
<p align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<b><a href="default.asp">Home page</a></b></td>
</tr>
</table>
</div>
<p align="left">
&nbsp;</p>

<b>

<%
Dim strQuery ' The text of our query
Dim objQuery ' The index server query object
Dim rstResults ' A recordset of results returned from I.S.
Dim objField ' Field object for loop

' Retreive the query from the querystring
strQuery = Request.QueryString("query")

' If the query isn't blank them proceed
If strQuery <> "" Then
' Create our index server object
Set objQuery = Server.CreateObject("IXSSO.Query")

' Set it's properties
With objQuery
.Catalog = "prova" ' Catalog to query
' .MaxRecords = 10 ' Max # of records to return
.SortBy = "rank [d]"
.Columns = "filename, path, vpath, size, write, " _
& "characterization, DocTitle, DocAuthor, " _
& "DocKeywords, rank, hitcount"

' Build our Query: Hide admin page and FPSE pages
strQuery = "(" & strQuery & ")" _
& " AND NOT #filename = *admin*" _
& " AND NOT #path *\_vti_*"

' Uncomment to only look for files modified last 5 days
' strQuery = strQuery & " AND @write > -5d"

.Query = strQuery ' Query text
End With

' To set more complex scopes we use the utility object.
' You can call AddScopeToQuery as many times as you need to.
' Shallow includes just files in that folder. Deep includes
' subfolders as well.
'
'Dim objUtility
'Set objUtility = Server.CreateObject("IXSSO.Util")
'objUtility.AddScopeToQuery objQuery, "c:\inetpub\wwwroot\indexserver", "shallow"
'objUtility.AddScopeToQuery objQuery, "c:\inetpub\wwwroot\indexserver\content", "shallow"
'Set objUtility = Nothing

' Get a recordset of our results back from Index Server
Set rstResults = objQuery.CreateRecordset("nonsequential")

' Get rid of our Query object
Set objQuery = Nothing

' Check for no records
If rstResults.EOF Then
Response.Write "VOCE NON TROVATA"
Else
' Print out # of results
Response.Write "<p><strong>"
Response.Write rstResults.RecordCount
Response.Write "</strong> Risultati trovati:</p>"
' Loop through results
Do While Not rstResults.EOF
' Loop through Fields
' Pretty is as pretty does... good enough:
%>
</b>
<p>
<% If rstResults.Fields("doctitle") = "" Then %>
<strong><a href="<%= PathToVpath(rstResults.Fields("path")) %>"><%= PathToVpath(rstResults.Fields("path")) %></a></strong><br />
<% Else %>
<strong><a href="<%= PathToVpath(rstResults.Fields("path")) %>"><%= rstResults.Fields("doctitle") %></a></strong><br />
<% End If %>

&nbsp;&nbsp;&nbsp;<em>Autore:</em> <%= rstResults.Fields("docauthor") %><br />
&nbsp;&nbsp;&nbsp;<em>Ultima Modifica:</em> <%= rstResults.Fields("write") %><br />
&nbsp;&nbsp;&nbsp;<em>Dimensione:</em> <%= rstResults.Fields("size") %>
bytes<br />
&nbsp;&nbsp;&nbsp;<em>Parole Chiave:</em> <%= rstResults.Fields("dockeywords") %><br />
<A HREF="E:\DOCUMENTI\SCRITTURE\RICERCHE DENNIS\">
&nbsp;&nbsp;&nbsp;<em>Descrizione:</em> <%= rstResults.Fields("characterization") %><br /></A>
</p>
<hr />
<%

' Move to next result
rstResults.MoveNext
Loop

rstResults.MoveFirst
Response.Write "<pre>"
'Response.Write rstResults.GetString()
Response.Write "</pre>"
End If

' Kill our recordset object
Set rstResults = Nothing
End If
%>

</body>
</html>

<%
Function PathToVpath(strPath)
Const strWebRoot = "\"

Dim strTemp

strTemp = strPath

strTemp = Replace(strTemp, strWebRoot, "\")
strTemp = Replace(strTemp, "\", "/")

PathToVpath = strTemp
End Function
%>

GRAZIE DI CUORE, ASPETTO BUONE NOTIZIE, PERCHE' NON SO PIU' DOVE ARRAMPICARMI.
Avatar utente
spetznatz
Neo Iscritto
Neo Iscritto
 
Messaggi: 6
Iscritto il: sab feb 21, 2009 2:03 pm


Torna a Sviluppo Web

Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising