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

    Splittare il testo in un campo

    Salve a tutti. Ho un database con un campo memo ed un testo di lunghezza variabile.
    Per visualizzare il contenuto uso
    codice:
    <%=Mostra("campo")%>
    Ma se volessi far visualizzare solo le prime 50 parole? Come devo procedere? (senza creare un altro campo nel DB)

  2. #2
    <%=left(Mostra("campo"),50)%>

  3. #3
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Originariamente inviato da asdfgasdfg
    <%=left(Mostra("campo"),50)%>
    Se vuoi anche fare il figo:

    <%= (left(Mostra("campo"),50) & "...") %>

    Comuque così verrebbero visualizzati i primi 50 caratteri. Per avere le prime 50 parole, la faccenda è un po' più complessa

  4. #4
    grazie ad entrambi, ma purtroppo non funge, viene fuori questo errore:

    Microsoft JScript runtime error '800a138f'

    Object expected

  5. #5
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Ti abbiamo risposto entrambi utilizzando una funzione di VBScript e non di JScript. Non saprei aiutarti

  6. #6
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Ad occhio sembra un problema di JS e non di ASP.

  7. #7
    si ma non so che problema possa essere. Richiamando il campo in maniera normale (senza splittarlo) tutto funziona correttamente.

    ecco l'intero contenuto della pagina:

    codice:
    <%@ LANGUAGE = JScript %>
    <%
       var Cn = new ActiveXObject("ADODB.Connection");
       var Sc = "driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("mdb-database/nomedatabase.mdb");
           Cn.Open(Sc);
       var Sql = "SELECT * FROM forum_topics ORDER BY topic_id DESC";
       var Mostra = new ActiveXObject("ADODB.Recordset");
    	   Mostra.Open(Sql,Cn,1);
       var pag = parseInt(Request.QueryString("id"));
           if (isNaN(pag) || pag < 1) pag = 1;
           if (!Mostra.EOF) {
                Mostra.PageSize = 2;
                Mostra.AbsolutePage = pag;
          }
       var i = 0;
    %>
    <body text="#192939" bgcolor="#FFFFFF">
    
    <table border="0" cellspacing="0" cellpadding="0" width="118">
      <tr>
        <td valign="top">
    
    <%while((!Mostra.EOF) && (i<2)){%>
    <font size="1" face="Arial"> </font>
    <div align="center">
    <table width="100%" cellpadding="1" cellspacing="0" style="border:
    1px Solid #192939" bordercolorlight="#E8E8FF"
    bordercolordark="#E8E8FF" bordercolor="#E8E8FF" bgcolor="#E8E8FF">
    <tr>
       <td align="left">
             <font size="1" face="Arial">- <a href="http://www.nmiosito.com/forum/topic.asp?TOPIC_ID=
    <%=Mostra("TOPIC_ID")%>"><%=Mostra("T_SUBJECT")%></font></a>
    
    è già stato letto <%=Mostra("T_VIEW_COUNT")%> volte.
    
    <%=left(Mostra("T_MESSAGE"),50)%> 
    
     
    
    </table>
    <%
             i++;
          Mostra.MoveNext();
       }
    %>
    
        </td>
        </tr>
      </table>
    
    </body>
    
    <%Cn.Close()%>

  8. #8
    Originariamente inviato da longline
    Se vuoi anche fare il figo:

    <%= (left(Mostra("campo"),50) & "...") %>

    Comuque così verrebbero visualizzati i primi 50 caratteri. Per avere le prime 50 parole, la faccenda è un po' più complessa
    Scusate se riesumo un vecchio post, però mi è tornato utilissimo perchè avevo il problema di estrarre un tot di caratteri da un campo memo....

    Mi piacerebbe sapere come si può fare per estrarre le prime "x" parole...

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.