Validar Nombre de usuario
-------------------------
function validarUsuario($nombre)
{
return preg_match("#^[a-z][\da-z_]{6,22}[a-z\d]\$#i", $nombre);
}
//ejm:
if(validarUsuario("nombreUsuario"))
{
echo "usuario valido";
}
else
{
echo "usuario invalido";
}
Validar Dirección Email
-----------------------
function validarEmail($email)
{
$reg = "#^(((([a-z\d][\.\-\+_]?)*)[a-z0-9])+)\@(((([a-z\d][\.\-_]?){0,62})[a-z\d])+)\.([a-z\d]{2,6})$#i";
return preg_match($reg, $email);
}
//ejm:
if(validarEmail("cesar@gmail.com"))
{
echo "email valido";
}
else
{
echo "email invalido";
}
Validar Fecha
-------------
function validarFecha($fecha){
$sep = "[\/\-\.]";
$req = "#^(((0?[1-9]|1\d|2[0-8]){$sep}(0?[1-9]|1[012])|(29|30){$sep}(0?[13456789]|1[012])|31{$sep}(0?[13578]|1[02])){$sep}(19|[2-9]\d)\d{2}|29{$sep}0?2{$sep}((19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00)))$#";
return preg_match($reg, $fecha);
}
//ejm:
if(validarFecha("12/01/2009"))
{
echo "fecha valida";
}
else
{
echo "fecha invalida";
}
Validar Dirección IP
--------------------
function validarIP($ip)
{
$val_0_to_255 = "(25[012345]|2[01234]\d|[01]?\d\d?)";
$reg = "#^($val_0_to_255\.$val_0_to_255\.$val_0_to_255\.$val_0_to_255)$#";
return preg_match($reg, $ip, $matches);
}
//ejm:
if(validarIP("192.168.1.1"))
{
echo "IP valida";
}
else
{
echo "IP invalida";
}
Validar Numero de Telefono
--------------------------
function validarTelefono($numero)
{
$reg = "#^\(?\d{3}\)?[\s\.-]?\d{3}[\s\.-]?\d{4}$#";
return preg_match($reg, $numero);
}
//ejm:
if(validarTelefono("(511)-311-4541"))
{
echo "telefono valido";
}
else
{
echo "telefono invalido";
}
Validar Numero de tarjeta de credito
------------------------------------
function validarTarjeta($num_tarjeta)
{
$num_tarjeta = preg_replace("/\D|\s/", "", $num_tarjeta);
$length = strlen($num_tarjeta);
$parity = $length % 2;
$sum=0;
for($i=0; $i<$length; $i++)
{
$digit = $num_tarjeta[$i];
if ($i%2==$parity) $digit=$digit*2;
if ($digit>9) $digit=$digit-9;
$sum=$sum+$digit;
}
return ($sum%10==0);
}
function getTipoTarjeta($cc)
{
$cards = array(
"visa" => "(4\d{12}(?:\d{3})?)",
"amex" => "(3[47]\d{13})",
"jcb" => "(35[2-8][89]\d\d\d{10})",
"maestro" => "((?:5020|5038|6304|6579|6761)\d{12}(?:\d\d)?)",
"solo" => "((?:6334|6767)\d{12}(?:\d\d)?\d?)",
"mastercard" => "(5[1-5]\d{14})",
"switch" => "(?:(?:(?:4903|4905|4911|4936|6333|6759)\d{12})|(?:(?:564182|633110)\d{10})(\d\d)?\d?)",
);
$names = array("Visa", "American Express", "JCB", "Maestro", "Solo", "Mastercard", "Switch");
$matches = array();
$pattern = "#^(?:".implode("|", $cards).")$#";
$result = preg_match($pattern, str_replace(" ", "", $cc), $matches);
if($result > 0)
{
$result = (validarTarjeta($cc))?1:0;
}
return ($result>0)?$names[sizeof($matches)-2]:false;
}
//ejm:
echo getTipoTarjeta("4111 1111 1111 1111");
Remplazar Url por un link
-------------------------
function convertirURL($url)
{
$host = "([a-z\d][-a-z\d]*[a-z\d]\.)+[a-z][-a-z\d]*[a-z]";
$port = "(:\d{1,})?";
$path = "(\/[^?<>\#\"\s]+)?";
$query = "(\?[^<>\#\"\s]+)?";
$reg = "#((ht|f)tps?:\/\/{$host}{$port}{$path}{$query})#i";
return preg_replace($reg, "<a href='$1'>$1</a>", $url);
}
//ejm:
echo convertirURL(" visita http://www.google.com");
Limpiar palabras groseras
-------------------------
function deswear($string){
function prep_regexp_array(&$item){
$item = "#$item#i";
}
function stars($matches){
return substr($matches[0], 0, 1).str_repeat("*", strlen($matches[0])-1);
}
$swears = array("idiota", "invecil");
array_walk($swears, "prep_regexp_array");
return preg_replace_callback($swears, "stars", $string);
}
//ejm:
echo deswear("marcianito es un idiota");
Eliminar código Javascript
--------------------------
function limpiarTags($source, $tags = null)
{
function clean($matched)
{
$attribs =
"javascript:|onclick|ondblclick|onmousedown|onmouseup|onmouseover|".
"onmousemove|onmouseout|onkeypress|onkeydown|onkeyup|".
"onload|class|id|src|style";
$quot = "\"|\'|\`";
$stripAttrib = "' ($attribs)\s*=\s*($quot)(.*?)(\\2)'i";
$clean = stripslashes($matched[0]);
$clean = preg_replace($stripAttrib, '', $clean);
return $clean;
}
$allowedTags='<a><br><b><i><br><li><ol><p><strong><u><ul>';
$clean = strip_tags($source, $allowedTags);
$clean = preg_replace_callback('#<(.*?)>#', "clean", $source);
return $source;
}
//ejm:
echo limpiarTags("este código es malicioso <script>alert('hola!')</script>");
Remplazar BBCode por HTML
-------------------------
function convertirBBcode($string)
{
$string = strip_tags($string);
$patterns = array(
"bold" => "#\[b\](.*?)\[/b\]#is",
"italics" => "#\[i\](.*?)\[/i\]#is",
"underline" => "#\[u\](.*?)\[/u\]#is",
"link_title" => "#\[url=(.*?)](.*?)\[/url\]#i",
"link_basic" => "#\[url](.*?)\[/url\]#i",
"color" => "#\[color=(red|green|blue|yellow)\](.*?)\[/color\]#is"
);
$replacements = array(
"bold" => "<b>$1</b>",
"italics" => "<i>$1</i>",
"underline" => "<u>$1</u>",
"link_title" => "<a href=\"$1\">$2</a>",
"link_basic" => "<a href=\"$1\">$1</a>",
"color" => "<span style='color:$1;'>$2</span>"
);
return preg_replace($patterns, $replacements, $string);
}
//ejm:
echo convertirBBcode("letra negrita");

Sitemap
Area de Clientes
Contacto
inkaweb1
hotmail.com
Reportar Enlace Roto o Abusos
