ASPcenter.net

3 marzo 2010

Link automatici all’occorrenza di HTTP in ASP

Il titolo di questo Articolo parla da se: avete presente quando in un Forum di discussione scriviamo un messaggio del tipo:

Corsi online su http://www.mrwcorsi.it non perdeteli!

ed la URL del link diventa automaticamente un link?

Corsi online su http://www.mrwcorsi.it non perdeteli!


Ecco cosa faremo! In breve il risultato di questo Articolo può essere considerato come una utility da aggiungere ad un Forum di discussione.

Non dobbiamo fare altro che verificare che, all’atto dell’inserimento di un topic, nella stringa del messaggio ci sia l’occorrenza di http://, dividendo la stringa in un Array di stringa ed inserendo un link HTML semplice in tutte le occorrenza col famoso protocollo.

Di seguito un esempio di codice abbondantemente commentato:

<%
    ' DICHIARO LA STRINGA ESTRATTA DALLA QUERY
    ' CHE POTREBBE ESSERE, AD ESEMPIO
    ' query = rs("messaggio")
    Dim query
    query = "Corsi online su http://www.mrwcorsi.it non perdeteli!"

    ' DIVIDO IL RISULTATO DELLA QUERY IN UN ARRAY DI STRINGA
    Dim s
    s = Split(query, " ")

    ' IMPOSTO IL CONTATORE PER IL CICLO
    Dim messaggio, i
    i = 0

    ' ESEGUO IL CICLO
    For i = 0 To Ubound(s)
        ' CONTROLLO CHE SIA PRESENTE L'OCCORRENZA DI http://
        ' E MEMORIZZO IL TESTO IN UNA VARIABILE PER POI STAMPARLO
        ' A VIDEO CORREDATO AUTOMATICAMENTE DI LINK IN CASO CI SIA
        ' UN'OCCORRENZA DI http://
        If InStr(s(i), "http://") Then
            messaggio = "<a href='" & s(i) + "'>" + s(i) & "</a>"
        Else
            messaggio = s(i)
        End If
        ' STAMPO MATERIALMENTE A VIDEO IL RISULTATO
        Response.Write messaggio & " "
    Next
%>

Ed ecco lo stesso codice pulito, privo di commenti:

<%
    Dim query
    query = "Corsi online su http://www.mrwcorsi.it non perdeteli!"

    Dim s
    s = Split(query, " ")

    Dim messaggio, i
    i = 0

    For i = 0 To Ubound(s)
        If InStr(s(i), "http://") Then
            messaggio = "<a href='" & s(i) + "'>" + s(i) & "</a>"
        Else
            messaggio = s(i)
        End If
        Response.Write messaggio & " "
    Next
%>

Possiamo ampliare lo script fino ad altri protocolli, ad esempio come https:// e ftp://, oppure creare in automatico anche link di tipo mailto: per indirizzi email.

Nessun commento »

Non c'è ancora nessun commento.

RSS feed dei commenti a questo articolo. TrackBack URL

Lascia un commento

ASPcenter.net è il blog italiano su ASP, ASP.Net, VB.Net, C# e Visual Studio - Funziona con WordPress