ragazzi, come posso rendere un testo in link? Mi spiego meglio.. Se in un database inserisco un testo con all'interno www.nomesito.it oppure con info@dominimali.it vorrei trasformarli in link su cui cliccare....
mi aiutate?
esempio:
[CUT BY GM]
ragazzi, come posso rendere un testo in link? Mi spiego meglio.. Se in un database inserisco un testo con all'interno www.nomesito.it oppure con info@dominimali.it vorrei trasformarli in link su cui cliccare....
mi aiutate?
esempio:
[CUT BY GM]
Ciao ylio82,
puoi risolvere il problema in due modi, il primo ( sbrigativo ) è quello di archiviare nel db anche i parametri html necessari a realizzare i vari link
Es. <a href="http://www.teatrodelpopolo.blogspot.com/">
http://www.teatrodelpopolo.blogspot.com/</a>
in questo caso, ricorda di fare attenzione a quei caratteri che possono influenzare il db come le virgolette.
Il secondo sistema è quello di archiviare i vari indirizzi in campi diversi del bd per poi inserirli nel codice html, purtroppo con questo sistema, sicuramente più pulito, non potrai creare link all'interno di testo già archiviato nel db.
ylio82 non c'era bisogno dell'esempio :rollo:
Addio Aldo, amico mio... [03/12/70 - 16/08/03]
Purtroppo non posso sapere a priori se vengono inseriti o meno dei link o degli indirizzi di posta elettronica all'interno del testo in quanto l'inserimento avviene dinamicamente... esiste una funzione che permette di trasformare una porzione di un testo che è un link, in un vero link?
Credo il metodo con espressioni regolari usando preg_replace() sia la soluzione migliore:
$string="www.a.it";
echo preg_replace("/(www\..+\..{2,3})/", "<a href=\"http://\$1\">\$1</a>", $string);
![]()
Michele Castellucci
Sviluppatore Web del Consorzio CottonBit
Consorzio Cottonbit
Risorse per la programmazione
Dire Fare Programmare!
Colpa mia, non avevo capito che il messaggio veniva inserito dinamicamente.
$string="www.a.it";
echo preg_replace("/(www\..+\..{2,3})/", "<a href=\"http://\$1\">\$1</a>", $string);
Non va bene!!!
Per due motivi:
1) Mi linka solo la parte www.sito.it e se ho www.sito.it/cartella il link si ferma a www.sito.it
2) Se c'è più di un sito all'interno del testo, non me li linka, ma si ferma al primo che trova...
come posso risolvere il problema?
Cosi funziona.
Studiati un pò meglio le espressioni regolari.
$string="www.a.it/aaa/bbb --- www.b.it";
echo preg_replace("/((www\..+\..{2,3}(\/[a-z]+)+)|(www\..+\..{2,3}))/", "<a href=\"http://\$1\">\$1</a>", $string);
Michele Castellucci
Sviluppatore Web del Consorzio CottonBit
Consorzio Cottonbit
Risorse per la programmazione
Dire Fare Programmare!
dovrebbe funzionare.. ma c'è un'altra funzione per l'indirizzo email?
Un pò di inventiva ?No?
Studiati un le espressioni regolari e vedrai che riuscirai. :ignore:
Michele Castellucci
Sviluppatore Web del Consorzio CottonBit
Consorzio Cottonbit
Risorse per la programmazione
Dire Fare Programmare!