Come creare una pagina di ricerca personalizzata di Index Server utilizzando ASP in Expression Web

Traduzione articoli Traduzione articoli
Identificativo articolo: 928700 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

INTRODUZIONE

In questo articolo viene descritto come creare una pagina di ricerca di Index Server personalizzata tramite clic sul pulsante (Active Server Pages) in Microsoft Expression Web.

Informazioni

Passaggio 1: Installare Microsoft ASP.NET

Prima di poter utilizzare le funzionalitÓ ASP in Expression Web, Ŕ necessario installare ASP.NET. Per ulteriori informazioni sull'installazione di ASP.NET, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
928710Come installare ASP.NET di utilizzare le funzionalitÓ di ASP (Active Server Pages) in Expression Web

Passaggio 2: Aggiungere una pagina del modulo in Expression Web

  1. Avviare Expression Web e quindi aprire il sito Web per cui si desidera creare una pagina di ricerca.
  2. Scegliere Nuovo dal menu file , fare clic su pagina e scegliere OK .
  3. Scegliere HTML dal menu Inserisci , quindi Altri tag HTML .
  4. Nel riquadro di destra, Espandi Controlli del form e quindi fare doppio clic su input (testo) , fare doppio clic sulla Casella A discesa e quindi fare doppio clic su input (Invia) .
  5. Nella pagina Web, fare doppio clic sulla casella di testo Ŕ inserito nel passaggio 4.
  6. Nella casella finestra di dialogo ProprietÓ casella di testo , digitare QUERYTEXT nella casella nome .
  7. Nella casella valore iniziale , digitare <%=Request("QUERYTEXT")%> e quindi fare clic su OK .
  8. Nella pagina Web, fare doppio clic a discesa casella inserito nel passaggio 4.
  9. Nella casella finestra di dialogo Diretta A ProprietÓ casella , digitare QUERYFIELD nella casella nome .
  10. Fare clic su Aggiungi e quindi digitare DocAppName della voce .
  11. Fare clic per deselezionare la casella di controllo Specifica valore e quindi fare clic su OK .
  12. Ripetere i passaggi 10 e 11 per aggiungere le seguenti voci di menu:
    • caratterizzazione
    • nomefile
    • DocAuthor
    • DocTitle
  13. Fare clic su OK
  14. Fare clic con il pulsante Invia destro del mouse su e quindi fare clic su ProprietÓ modulo .
  15. Fare clic su altre e quindi fare clic su Opzioni .
  16. Nella casella azione , digitare <%=Request.ServerVariables("URL")%>, quindi scegliere OK due volte.
  17. Nel menu file , fare clic su Salva .
  18. Nella casella nome file digitare IndexServerTest.asp e quindi fare clic su Salva .

Passaggio 3: Aggiungere il codice di esempio ASP alla pagina

Nota Potresti ricevere un messaggio di errore se si incolla il codice di esempio da questo articolo in Expression Web. Expression Web potrebbe non interpretino correttamente le parentesi angolari (<). Per aggirare questo comportamento, incollare il codice di esempio in un documento vuoto del blocco note. Quindi, copiare il codice nel blocco note e incollarlo in Expression Web.
  1. Nella barra di stato del riquadro di destra fare clic su codice per passare alla visualizzazione HTML.
  2. Type or paste the following code before the opening HTML tag:
    <%
      ' Force variable declaration.
      Option Explicit
    
      ' Declare all our 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.
      ' You can customize the list of fields. For more information,
      ' see Microsoft Knowledge Base article 318387.
      Const strDisplayFields = "Rank, DocAuthor, DocAppName, DocTitle, FileName, Create, Access, Characterization, VPath"
    
      ' This is the default Index Server catalog for all Web content.
      ' For information about how to customize this, see Microsoft 
      ' Knowledge Base article 318387.
    
      Const strDataSource = "WEB"
    
      ' Get the value of the user-submitted search query.
      strQueryText = Request("QUERYTEXT")
      ' Set a default value if the user has not submitted anything.
      If Len(strQueryText) = 0 Then strQueryText = "%%"
    
      ' Get the field that 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"
    %>
  3. Digitare o incollare il codice riportato di seguito dopo il tag di chiusura:
    ' Check if the user has entered a value in the form
    If strQueryText <> "%%" Then
    <%
      ' 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 by 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 is 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
            ' Look 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 on to the next record.
          objRS.MoveNext
         Wend
         Response.Write "</table>" & vbCrLf
      End If
    %>
    Else
    ' User has not entered any value in search form
        Response.Write "Please enter a Search Term before submitting the form" & vbCrLf
    End if
  4. Nel menu file , fare clic su Salva .

Passaggio 4: Verifica la pagina ASP di esempio

  1. Avviare Expression Web e quindi aprire la pagina IndexServerTest.asp.
  2. Scegliere Visualizza anteprima nel browser dal menu file , quindi il browser che si desidera utilizzare.
  3. Digitare i criteri di ricerca nella casella di testo. Nell'elenco, fare clic sul campo che si desidera eseguire una query.
  4. Fare clic su Invia . Gli eventuali risultati disponibili per la query verranno visualizzati nella pagina in una tabella.

Passaggio 5: Personalizzare la pagina ASP di esempio

Utilizzare uno dei seguenti metodi per personalizzare la pagina ASP di esempio.

Metodo 1: Modificare il catalogo

Se sul server Web sono definiti pi¨ cataloghi di Index Server, Ŕ possibile configurare nella pagina di esempio per utilizzare un catalogo diverso. Per effettuare questa operazione, attenersi alla seguente procedura:
  1. Avviare Expression Web e aprire l'esempio ASP pagina che si Ŕ creato in precedenza in questo articolo.
  2. Fare clic su codice per passare alla visualizzazione HTML.
  3. Individuare la seguente riga di codice:
    Const strDataSource = "WEB"
  4. Modificare il valore della variabile strDataSource al nome del catalogo. Ad esempio, la riga sarÓ simile al codice riportato di seguito:
    Const strDataSource = My_Custom_Catalog
  5. Dal menu file , fare clic su Salva e quindi chiudere il file.

Metodo 2: Modificare l'elenco di campi

  1. Avviare Expression Web e quindi aprire la pagina Web di esempio creato in precedenza in questo articolo.
  2. Fare clic su codice per passare alla visualizzazione HTML.
  3. Individuare la riga di codice simile al codice riportato di seguito:
    Const strDisplayFields = "Rank, DocAuthor, DocAppName"
  4. Modificare l'elenco dei valori. Separare ogni nome di campo con una virgola. Ad esempio, la riga sarÓ simile al codice riportato di seguito:
    Const strDisplayFields = "Rank, DocAuthor, DocAppName, DocTitle"
  5. Dal menu file , fare clic su Salva e quindi chiudere il file.
Nella tabella riportata di seguito sono elencati i valori che Ŕ possibile utilizzare per la variabile strDisplayFields .
Riduci questa tabellaEspandi questa tabella
nome campo tipo di campo Descrizione
AccessoData/oraDurante l'ultimo accesso al file
CaratterizzazioneTesto/stringaCaratterizzazione o abstract, del documento come calcolato da Index Server
CreareData/oraMomento in cui Ŕ stato creato il file
DirectoryTesto/stringaIl percorso fisico del file, escluso il nome di file
DocAppNameTesto/stringaIl nome dell'applicazione che ha creato il file
DocAuthor Testo/stringaL'autore del documento
DocByteCountNumerico Il numero di byte nel documento
DocCategoryTesto/stringaIl tipo di documento, ad esempio una nota, pianificazione o white paper
DocCharConteggio numericoIl numero di caratteri nel documento
Dei commentiTesto/stringaI commenti sul documento
DocCompanyTesto/stringaIl nome della societÓ per cui Ŕ stato scritto il documento
DocCreatedTmData/oraMomento in cui Ŕ stato creato il documento
DocEditTimeData/oraIl tempo totale impiegato modifica del documento
DocHiddenCountNumericoIl numero di diapositive nascoste di una presentazione di Microsoft PowerPoint
DocKeywordsTesto/stringaLe parole chiave documento
DocLastAuthorTesto/stringaL'utente pi¨ recente per modifica il documento
DocLastPrintedData/oraL'ora ultima stampa del documento
DocLastSavedTmData/ora Momento in cui Ŕ stato salvato il documento
DocLineCountNumericoIl numero di righe contenute in un documento
DocManagerTesto/stringaIl nome del responsabile dell'autore del documento
DocNoteCountNumericoIl numero di pagine sono presenti note in una presentazione di PowerPoint
DocPageCountNumericoIl numero di pagine nel documento
DocParaCountNumericoIl numero di paragrafi del documento
DocPartTitlesTesto/stringaI nomi delle parti del documento. In Microsoft Excel, ad esempio, un foglio di calcolo Ŕ una parte del documento. In Microsoft PowerPoint una diapositiva Ŕ una parte del documento. In Microsoft Word, i nomi di file dei documenti contenuti in un documento master sono parti del documento.
DocPresentationTargetTesto/stringaIl formato di destinazione (ad esempio 35 mm, stampante o video) per una presentazione di PowerPoint
DocRevNumberTesto/stringaIl numero di versione corrente di un documento
DocSlideCountNumericoIl numero di diapositive in una presentazione di PowerPoint
DocSubjectTesto/stringaL'argomento del documento
DocTemplateTesto/stringaIl nome del modello per il documento
DocTitleTesto/stringaIl titolo del documento
DocWordCountNumericoIl numero di parole nel documento
FileIndexNumericoL'ID univoco del file
NomefileTesto/stringaIl nome del file
HitCountNumericoIl numero di accessi o le parole che corrispondono a una query, nel file
PercorsoTesto/stringaIl percorso fisico completo del file, incluso il nome del file
Numero di dimensioniNumericoIl rango di riga. Questo valore compreso tra 0 e 1000. I numeri di dimensioni superiori indicano migliori corrispondenze.
ShortFileNameTesto/stringaNome breve (8.3)
DimensioneNumericoLa dimensione del file in byte
VPathTesto/stringaIl percorso virtuale completo del file, incluso il nome del file. Se Ŕ presente pi¨ di un percorso possibile, viene scelta la corrispondenza migliore per la query specifica.
ScritturaData/oraL'ora dell'ultimo il file Ŕ stato scritto.

Risoluzione dei problemi

  • Se il servizio di indicizzazione non Ŕ in esecuzione, Ŕ visualizzato il seguente messaggio di errore:
    Provider Microsoft OLE DB per il servizio indicizzazione, errore '80041820' il servizio non Ŕ in esecuzione. /IndexServerTest.asp, riga 44
    Per risolvere il problema, avviare il Servizio di indicizzazione.
  • Se si specifica un catalogo che non Ŕ valido, che viene visualizzato un messaggio di errore analogo al seguente:
    Il Provider Microsoft OLE DB per servizio di indicizzazione errore '8004181d' non Ŕ Nessun catalogo. /IndexServerTest.asp, riga 44
    Per risolvere il problema, controllare il valore della variabile strDataSource . Se tale valore Ŕ corretto, riavviare il Servizio di indicizzazione.

Riferimenti

Per ulteriori informazioni su come utilizzare con il servizio di indicizzazione Microsoft Windows 2000, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
185985Utilizzo di Index Server per query e visualizzare le informazioni dei META TAG
256276Messaggio di errore: non esiste nessun catalogo
229282Codice ASP Ŕ visibile quando la si visualizza l'origine di una pagina di risultati di Index Server

ProprietÓ

Identificativo articolo: 928700 - Ultima modifica: lunedý 11 dicembre 2006 - Revisione: 1.0
Le informazioni in questo articolo si applicano a:
  • Microsoft Expression Web
Chiavi:á
kbmt kbexpertiseinter kbhowto KB928700 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 928700
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com