Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Riconoscimento link

  1. #1

    Riconoscimento link

    ragazzi scusate, non so se la sezione è giusta ma avrei bisogno di un ultimo aiutino...
    Ho finito il guestbook...
    c'è un modo x cercare all'interno del testo inserito se ci sta un www oppure un http:// x mettere un collegamento ipertestuale a tutte le parole che iniziano cosi?
    Grazie ancora

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ti conviene farlo lato server (e magari anche lato client), ma non solo lato client. Si tratta di applicare qualche espressione regolare. Proprio ieri o l'altro ieri era stata postata una soluzione ad un problema analogo in JS. La regex resta valida, adattala alla sintassi del tuo linguaggio lato server.

    [EDIT]
    Trovato link
    http://forum.html.it/forum/showthrea...hreadid=968328
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    mamma mia, io sto usando il php col database mysql, cosa dovrei cercare di preciso, non so se quel link fa al caso mio

  4. #4
    Ho cercato dovunque ma forse sbaglio i criteri di ricerca...

    Cmq ho trovato questo programmino che mi consente di trasformare una stringa in un link:

    <?
    $link = "http://www.html.it";
    $link = eregi_replace("(http|https|ftp)://([[:alnum:]/
    \n+-=%&:_.~?]+[#[:alnum:]+]*)","
    <a href=\"\\1://\\2\" target=\"_blank\">$link</a>

    ", $link);
    echo "$link";

    ?>


    ma ora come faccio a trovare nel testo tutti i link? cioè tutte le scritte http:// e www?
    Se le trovo poi basta barle modificare da questo programma giusto?

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    in $link nell' esempio che hai postato hai solo un indirizzo, ma se vi fosse un testo comprendente anche vari indirizzi ognuno di essi verrebbe trasformato in un link html

    al momento sposto in php visto che si sta considerando la soluzione lato server, se dovessi considerare anche quella lato client ci risentiamo nel forum javascript

  6. #6
    Ragazzi alla fine ho risolto con un espressione regolare, così:

    $pattern1="(http://)([-+%&a-z0-9\.-_]+)|(www\.)([-+%&a-z0-9\.-_]+)";

    if(eregi($pattern1,$messaggio)){
    $messaggio=eregi_replace($pattern1, "<a href=\"http://\\2\\3\\4\" target=\"_blank\">http://\\2\\3\\4</a>", $messaggio);
    }

    Non so se l'espressione si poteva far meglio ma comunque sembra funzionare benissimo

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.