gracias josemi, lo probe y ese era el error pero en el caso de que un usuario no tan distraido coloque
osea la direccion SIN el "http://"
aparece:
http://www.mipagina.com/www.algo.com
por otra parte encontre este codigo:
Código PHP:
function parsearurl($mensaje){
$urlBuscarArray = array(
"/([^]_a-z0-9-=\"'/])((https?|ftp|gopher|news|telnet)://|www.)([^ \r\n()^\$!`\"'|[]{}<>]*)/si",
"/^((https?|ftp|gopher|news|telnet)://|www.)([^ \r\n()^\$!`\"'|[]{}<>]*)/si"
);
$urlRemplazarArray = array(
"\1[url]\2\4[/url]",
"[url]\1\3[/url]"
);
$emailBuscarArray = array(
"/([ \n\r\t])([_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(.[a-zA-Z0-9-]+)*(.[a-zA-Z]{2,4}))/si",
"/^([_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(.[a-zA-Z0-9-]+)*(.[a-zA-Z]{2,4}))/si"
);
$emailRemplazarArray = array(
"\1[mail]\2[/mail]",
"[mail]\0[/mail]"
);
$texto = preg_replace($urlBuscarArray, $urlRemplazarArray, $mensaje);
if (strpos($texto, "@")) {
$texto = preg_replace($emailBuscarArray, $emailRemplazarArray, $texto);
}
return $texto;
}
¿seria asi el uso?
$mensaje = parsear($mensaje);
Desde ya muchas gracias