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

    Divisione del testo ma non dei link

    Ciao a tutti ...

    Io ho due funzioni molto utili, la prima spezza le parole che superano un tot numero di caratteri, l'altra forma i link in maniera automatica.

    L'unico problema è che se un link supera la lunghezza consentita, me lo spezza e quindi il link risulta inaccessibile.

    vorrei sapere se è possibile modificare la funzione per la divisione delle parole inserendo qualcosa che dica che quando c'è un http:// di non dividere finchè la parola non è finita ...

    di seguito posto i due codici

    Funzione per la divisione delle parole
    codice:
    <%
    Function shareWords(tempTXT)
    
    Limit = 90
    arrTXT = Split(tempTXT)
    
    For x = 0 To UBound(arrTXT)
    
    tempLenght = Len(arrTXT(x))
    If tempLenght > Limit Then
    Count = tempLenght / Limit
    
    If Count - CInt(Count) <> 0 Then
    Count = Count + 1
    End If
    
    start = 1
    
    For y = 1 To Count
    Response.Write Mid(arrTXT(x),start,Limit) & " "
    start = start + Limit
    Next
    Else
    Response.Write arrTXT(x) & " "
    End If
    
    Next
    
    End Function

    Funzione per la creazione automatica dei link

    codice:
    
    Function IsEmail(tempEmail)
    
    If Len(tempEmail) < 8 Then
    IsEmail = False
    Else 
    At = 0 
    For x = 1 To Len(tempEmail)
    If Mid(tempEmail,x,1) = "@" Then
    At = At + 1
    End If
    Next 
    If Len(Mid(tempEmail,(InStrRev(tempEmail,".") + 1),Len(tempEmail))) < 2 Then
    At = 0
    End If 
    If At <> 1 Then
    IsEmail = False
    Else
    IsEmail = True
    End If 
    End If
    
    End Function
    
    
    Sub MakeLinks(tempString)
    
    arrTempString = Split(tempString)
    
    For Each Word In arrTempString
    
    
    If Left(Word,7) = "http://" Then
    tempOutput = tempOutput & "<a href=""" & Word & """ target=""_blank"">" &_
    Word & "</a> "
    ElseIf Left(Word,4) = "www." Then
    tempOutput = tempOutput & "" & Word & " " 
    ElseIf IsEmail(Word) Then
    tempOutput = tempOutput & "<a href=""mailto:" & Word & """>" & Word &_
    "</a> "
    Else
    tempOutput = tempOutput & Word & " "
    End If
    
    Next
    
    tempString = tempOutput
    
    End Sub
    
    %>

  2. #2
    Utente di HTML.it L'avatar di Luis33
    Registrato dal
    May 2003
    Messaggi
    975
    ma hai provato?
    ... Sono graditi codes, esempi pratici, suggerimenti, consigli e critiche...
    "Ai posteri l'ardua sentenza..."
    Tante grazie
    Saluti
    Luis 33

  3. #3
    Non saprei nemmeno da cominciare

    sono rimasto ore e ore davanti a sti codicilli cercando di capire cosa mettere dove.

    Ma senza riuscire nell'impresa


    uff

  4. #4
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Function shareWords(tempTXT)

    Limit = 90
    arrTXT = Split(tempTXT)

    For x = 0 To UBound(arrTXT)

    tempLenght = Len(arrTXT(x))

    If Left(tempLenght, 7) <> "http://" Then

    If tempLenght > Limit Then
    Count = tempLenght / Limit

    If Count - CInt(Count) <> 0 Then
    Count = Count + 1
    End If

    start = 1

    For y = 1 To Count
    Response.Write Mid(arrTXT(x),start,Limit) & " "
    start = start + Limit
    Next
    Else
    Response.Write arrTXT(x) & " "
    End If
    End If

    Next

    End Function
    Maddalena... Perché proprio Iacchetti!...

  5. #5
    grazie per la risposta ... l'ho provato subito subito ...

    ma non funziona


    mi spezza sempre il testo anche se è http://


  6. #6
    alt, "quasi" come non detto ...

    mi spiego, se metto solo il link, http://fdfsdfasdf
    la funzione per il cambio me lo converte tranquillamente e fa tutto a regola d'arte.

    Mentre se uso il "mio" bbcode mettendo i tag ecc ecc ...
    me lo spezza, ovviamente prima faccio il replace, in modo che siano già trasformati i link ...

    so' pazzo io o ke ??

  7. #7
    come non detto ... non lo applica e basta :\


    ...

  8. #8

    RISOLTO !!!

    risolto


    il problema era che pireda aveva preso tempLenght, ovvero la lunghezza della stringa ... cmq grazie a lui ho capito e sono andato sulla buona strada


    bisognava solo mettere arrTXT(x) al posto di tempLenght .. che è in pratica la stringa testuale.

    fatto questo però bisogna mettere al posto di http:// il vero inizio della stringa splittata... che è href=
    in prativa i link vengono lasciati stare, ma se uno inserisce un link lunghissimo ... viene divisa la stringa visibile, ma non il link.


    cmq incollo direttamente il risultato finale.

    perfettamente funzionante.

    P.S. per tutti coloro a cui potrebbe servire.

    va richiamato con

    Call shareWords(variabile_da_dividere)

    ciao e grazie a tutti

    P.P.S. per tutti i pecoroni (me compreso)
    la function va inserita nell'head della pagina

    codice:
    Function shareWords(tempTXT) 
    
    Limit = 90 
    arrTXT = Split(tempTXT) 
    
    For x = 0 To UBound(arrTXT) 
    
    tempLenght = Len(arrTXT(x)) 
    If left(arrTXT(x),5) <> "href=" Then
    If tempLenght > Limit Then 
    Count = tempLenght / Limit 
    
    If Count - CInt(Count) <> 0 Then 
    Count = Count + 1 
    End If 
    
    start = 1 
    
    For y = 1 To Count 
    Response.Write Mid(arrTXT(x),start,Limit) & " " 
    start = start + Limit 
    Next 
    Else 
    Response.Write arrTXT(x) & " " 
    End If
    Else 
    Response.Write arrTXT(x) & " " 
    End If
    
    Next 
    
    End Function

  9. #9
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Scusami se non ti avevo più risposto ma non mi sono più potuto collegare, comunque vedo che sei riuscito a risolvere, perfetto!
    Maddalena... Perché proprio Iacchetti!...

  10. #10
    figurati ci mancherebbe

    grazie a te almeno sono andato sulla buona strada e sicuramente ho capito qualche cosa in più


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.