Mi è venuto un dubbio, vedo che molti usano preg_match per validare una Reg, io uso !eregi e funziona lo stesso, allora che cambia?
if ($url){
if (!eregi("^((http(s)?:\/\/)|(www\\.))([^-_;:.,'*^+()=!|?<>£§$%&#èùòàé/][-.a-z0-9]+)(\.[a-z]{2,4}[/?]?)([/?]([-_;:.,'*^+()=!|?£§$%&#A-Za-z0-9/])*)?$",$url)){
$errore .= "Inserire un' URL valido";
}
}