Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Testo estremamente lungo

    Ciao di nuovo.

    QUesta volta il problema è con in testo contenuto all'interno di un campo longtext di un db mysql.

    Il testo è talmente lungo e scritto su un'unica riga che fuoriesce dai limiti della pagina aperta sul browser e crea nella tabella che lo contiene una colonna larghissima.

    Come posso risolvere?

    Quando inserisco nel db utilizzo:

    codice:
    faqAnswer = Replace(faqAnswer, "
    ", vbCrLf)
    faqAnswer = Replace(faqAnswer, "", " ")
    Ma non risolvo....

    Grazie-

  2. #2

    Re: Testo estremamente lungo

    Originariamente inviato da ubbicom
    Ciao di nuovo.

    QUesta volta il problema è con in testo contenuto all'interno di un campo longtext di un db mysql.

    Il testo è talmente lungo e scritto su un'unica riga che fuoriesce dai limiti della pagina aperta sul browser e crea nella tabella che lo contiene una colonna larghissima.

    Come posso risolvere?

    Quando inserisco nel db utilizzo:

    codice:
    faqAnswer = Replace(faqAnswer, "
    ", vbCrLf)
    faqAnswer = Replace(faqAnswer, "", " ")
    Ma non risolvo....

    Grazie-
    Il tuo problema risiede nella presentazione a video del testo?
    Scusa neh, ma nn puoi spezzarti semplicemente la stringa su più righe manualmente?
    Ogni, esempio, 100 caratteri mandi a capo, controllando che ci sia uno spazio al centesimo caratteri, altrimenti fai 101, oppure 99 ...

  3. #3
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Di default il testo di una pagina web va a capo automaticamente quando non ha più spazio a disposizione.

    Quando non succede è a causa di impostazioni di HTML (una tabella con il tag TD con l'opzione NOWRAP) e/o CSS (white-space: nowrap.

    Il problema quindi è a livello di HTML/CSS.

  4. #4
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Re: Re: Testo estremamente lungo

    Originariamente inviato da alemux
    Il tuo problema risiede nella presentazione a video del testo?
    Scusa neh, ma nn puoi spezzarti semplicemente la stringa su più righe manualmente?
    Ogni, esempio, 100 caratteri mandi a capo, controllando che ci sia uno spazio al centesimo caratteri, altrimenti fai 101, oppure 99 ...
    Grazie, mi fai un esempio per piacere?

  5. #5
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    up

  6. #6

    Re: Re: Re: Testo estremamente lungo

    Originariamente inviato da ubbicom
    Grazie, mi fai un esempio per piacere?
    Allora, il fatto che non vada mai a capo, può essere per il fatto che tu non metti il testo in un DIV. Stampando il testo nel body lui lo mette lungo tutto una riga. Se tu mettessi un DIV gestendo i margini con il PADDING probabilmente risolveresti il tuo problema.

    Ma magari non è questo il caso.
    Io spesso, per stampare i titoli delle News (ma solo qualche parola), cerco, dopo N caratteri, lo spazio; cosi facendo mi ritrovo frasi tipo: "Ritrovate tracce di vita aliena..." o roba del genere.


    <%
    testo = "Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura chè la diritta via era smarrita. Ahi quando a dir qual era è cosa dura"

    IF len( testo ) > 90 THEN
    carattere = Instr(60 , testo, " ")
    response.write ( LEFT ( testo, carattere ) & " ... " )
    ELSE
    response.write ( testo & " ... " )
    END IF
    %>

    Allora, questo codice serve giusto per controllare se la stringaè piu lunga di 90 caratteri, se si, cerca uno spazio e mette i tre puntini di sospensione.
    Può essere un buon punto di partenza per te, anche se io cercherei di risolvere il problema alla radice. E' impossibile che un testo sia forzato tutto su una riga, cosi...senza un motivo.

  7. #7
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Grazie, ho provato così ma non funziona:

    codice:
    maxLen=5
    testo=rsFAQDetails.Fields("faq_answer").Value
    
    parole=split(testo," ")
    att=0
    
    for each parola in parole
    testo=testo & " " & parola
    att=att+len(parola)+1
    
    if InStr(testo,vbCrLf)=0then 
    
    if att>=maxLen then
    testo=testo & "
    "
    att=0 
    end if
    end if 
    next
    
    	Response.Write("          <td width='50' align='left'>" & testo) & vbCrLf

  8. #8
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363

    Re: Re: Re: Re: Testo estremamente lungo

    Originariamente inviato da alemux
    Allora, il fatto che non vada mai a capo, può essere per il fatto che tu non metti il testo in un DIV. Stampando il testo nel body lui lo mette lungo tutto una riga. Se tu mettessi un DIV gestendo i margini con il PADDING probabilmente risolveresti il tuo problema.

    [...]

    Può essere un buon punto di partenza per te, anche se io cercherei di risolvere il problema alla radice. E' impossibile che un testo sia forzato tutto su una riga, cosi...senza un motivo.
    Tutti i testi, in qualsiasi caso, vanno a capo di default quando non c'è più spazio. Se questo non succede, ci sono gravi problemi di HTML e CSS. La soluzione di spezzare le righe è solamente un palliativo...

  9. #9
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Re: Re: Re: Re: Re: Testo estremamente lungo

    Originariamente inviato da longline
    Tutti i testi, in qualsiasi caso, vanno a capo di default quando non c'è più spazio. Se questo non succede, ci sono gravi problemi di HTML e CSS. La soluzione di spezzare le righe è solamente un palliativo...
    codice:
        Response.Write("<table width='95%' border='0' align='center' cellpadding='1' cellspacing='2'>") & vbCrLf
        Response.Write("  <tr>") & vbCrLf
        Response.Write("     <td width='50%'>Le domande più frequenti</td>") & vbCrLf
        
        Response.Write("     <td width='3%' align='right'>[img]images/print.gif[/img]</td>") & vbCrLf
        Response.Write("     <td width='12%' align='left'>Stampa FAQ</td>") & vbCrLf
        
        Response.Write("     <td width='3%' align='right'>[img]images/favorites.gif[/img]</td>") & vbCrLf
        Response.Write("     <td width='12%' align='left'>Aggiungi ai Preferiti</td>") & vbCrLf
        
        Response.Write("     <td width='3%' align='right'>[img]images/email.gif[/img]</td>") & vbCrLf
        Response.Write("     <td width='17%' align='left'>Fai una domanda</td>") & vbCrLf
        
        Response.Write("  </tr>") & vbCrLf
    
    
        Response.Write("  <tr valign='top'>") & vbCrLf
        Response.Write("    <td colspan='7'>") & vbCrLf
        Response.Write("	  <table width='100%' border='0' cellpadding='2' cellspacing='2' class='tblbdr'>") & vbCrLf
    	Response.Write("	    <tr><td class='Cats' colspan='2'>" & categoryName & "</td></tr>") & vbCrLf
    		
    	Response.Write("	    <tr valign='top' class='Contents'>") & vbCrLf
    	Response.Write("	      <td align='left'>") & vbCrLf 
    	Response.Write("	        
    
    [img]images/btnfaq.gif[/img]</p>") & vbCrLf
    	Response.Write("	      </td>") & vbCrLf
    	Response.Write("	      <td width='100%' align='left'>" & faqQuestion) & vbCrLf
    	Response.Write("	      </td>") & vbCrLf
    	Response.Write("	    </tr>") & vbCrLf
    				
    	Response.Write("        <tr valign='top' class='Contents'>") & vbCrLf
    	Response.Write("          <td align='left'>") & vbCrLf 
    	Response.Write("            
    
    [img]images/btnans.gif[/img]</p></td>") & vbCrLf
    	
    maxLen = 5
    testo = rsFAQDetails.Fields("faq_answer").Value
    
    parole = split(testo," ")
    att = 0
    
    for each parola in parole
    testo = testo & " " & parola
    att = att + len(parola) + 1
    
    if InStr(testo, vbCrLf) = 0 then 
    
    if att >= maxLen then
    testo = testo & "
    "
    att = 0
    
    end if
    end if
    
    next
    
    	Response.Write("          <td width='50' align='left'>" & testo) & vbCrLf	
    
    
    
    	
    	Response.Write("            
    ") & vbCrLf
    	If faqRelatedLink <> "" Then
    	  Response.Write("            
    Related link: " & faqRelatedLink & "") & vbCrLf
    	  Response.Write("            
    ") & vbCrLf
    	End If
    	
    	'If faqSuggestedByEmail <> "" Then Response.Write("            
    FAQ suggerita da: " & faqSuggestedByEmail) & vbCrLf
    	If faqDateAdded <> "" Then 
    	  Response.Write("            
    Date inserimento: " & faqDateAdded) & vbCrLf
          Response.Write("            
    ") & vbCrLf
    	End If
    	
    	Response.Write("            
    Indietro</td>") & vbCrLf
    	Response.Write("        </tr>") & vbCrLf
    	Response.Write("      </table>") & vbCrLf
    	Response.Write("    </td>") & vbCrLf
        Response.Write("  </tr>") & vbCrLf
        Response.Write("</table>") & vbCrLf

  10. #10

    Re: Re: Re: Re: Re: Testo estremamente lungo

    Originariamente inviato da longline
    Tutti i testi, in qualsiasi caso, vanno a capo di default quando non c'è più spazio. Se questo non succede, ci sono gravi problemi di HTML e CSS. La soluzione di spezzare le righe è solamente un palliativo...
    Ovviamente sono d'accordo

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.