ciao a tutti, cercando di inserire la funzione del link automatico nei miei script sono incappato in un problema... trovate tutto qui:
www.giacowebsite.altervista.org/form.php
ciao!!
giaco
ciao a tutti, cercando di inserire la funzione del link automatico nei miei script sono incappato in un problema... trovate tutto qui:
www.giacowebsite.altervista.org/form.php
ciao!!
giaco
ma quello è un controllo fatto su quella pagina??
se è cosi puoi mettere echo"<a href=\"tuosito\">$variabile</a>"
prova cosi
no non hai capito.. il campo $testo contiene sia www.giaco.it che altro testo.. vorrei che nell'output comparisse a livello di codice: <a href="http://www.giaco.it" target="_blank">www.giaco.it</a> resto del testo..
cosa intendi per controllo?
fai dei campi separati :)
ci sono degli if {
}else{
}
ecco quelli sono dei controlli tu metti nell'if o nell else insomma dove sta l'output echo"<a href=\"http://www.giaco.it\">$_POST[nome campo]</a>
forse nn mi sono spiegato bene.. boh..
farlimas: non è possibile
jostock: con gli if nn ci faccio un tubo.. allora ecco un'altro esempio.. se io qui su altervista scrivo www.altervista.org, una volta scritto il messaggio questo link è cliccabile, in quanto la pagina php immagino abbia riconosciuto la parte di testo "www.altervista.org" come link e di conseguenza abbia inserito al posto di quello un <a href="www.altervista.org">www.altervista.org</a>, che è poi il codice di output. Ecco io vorrei fare ciò...
Provando con gli str_replace, potrei sostituire www. con <a href="www.,", ma dopo nn saprei come interpretare il resto del testo e soprattutto come guidere il tag <a>...
ciao!!
giaco
vabè allora se proprio non è possibile fai una verifica con eregi se la parola comincia con www poi il puntino..poi il resto magari fino al primo spazio e forse anche la funzione urldecode ti può servire...non son sicura, magari fai una ricerca sul manuale di php.
la funzione urldecode nn mi ha chiarito le idee..
io avevo pensato questo:
$testo = "ciao www.sito.it";
$parti = explode("www.", $testo);
$estensione = explode(".", $parti[1]);
$link = "<a href="www.$parti[1].$estensione[1]">$www.$parti[1].$estensione[1]</a>";
è molto contorto ed immagino non funzionante, anche perchè sotto parti[1] ci sarebbe anche tutto il resto del messaggio dopo il ".".. e per i siti tipo www.sito.url.com??
però potrebbe essere un'inizio..
ciao!!
giaco
a guarda ho visto ora c'è una funzione apposita ceh ti divide in array le parti di un url:
array parse_url ( string url )
magari vedi un po' se ti serve
prova questa...
$testo = preg_replace('/(w{3})(\/)?(\S+)?/i', "<a href='http://\\1\\3' target='_blank'>\\1\\3</a>",$testo);
bbcode:
Codice PHP:
<?
function make_clickable($text, $target='_blank') {
if (!empty($text))
return ereg_replace("(((http|ftp|https)://)|(www\.))+(([a-zA-Z0-9\._-]+\.[a-zA-Z]{2,6})|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(/[a-zA-Z0-9\&%_\./-~-]*)?","<a href=\"\\0\" target=\"".$target."\">\\0</a>", $text);
else
return null;
}
?>
grazie modding, ho aggiunto qualche modifica e ora funziona perfettamente!
ciao!!
giaco
di nulla
xiao
bart
... bene, chiudo ...
...Il grano che nasce e l'acqua che va, è un dono di tutti, padroni non ha...
My Site FAQ di AlterVista Regolamento di AlterVista