Validar solo números enteros positivos con javascript

var patron = /^\d*$/; //Expresión regular para aceptar solo números enteros
var numero = 10; //Variable a analizar

// Este método regresa true si la cadena coincide con el patrón definido en la expresión regular
if (patron.test(numero)) {            
  alert(«Número es correcto»)
}else {
alert(«El número es incorrecto»);
}

Recuperar carpetas ocultas por virus en memorias usb

Este virus es de los mas comunes en Windows y la mayoría  piensa que les borra sus archivos pero no es así, tan solo los oculta y les pone atributo de archivo de Sistema por lo cual no pueden ser vistos ni se les puede quitar el atributo con las propiedades de archivo (usando botón derecho>propiedades)

En esta ocasión les traigo un archivo .bat con el cual podrán mostrar nuevamente sus archivos y carpeta.

Únicamente tienen que teclear la letra de la unidad infectada y listo!.  Sus carpetas serán mostradas nuevamente.

Descargar en: http://adf.ly/ErCw0

Nota:

Este archivo no elimina el virus del PC infectado. Únicamente muestra las carpetas ocultas en las memorias usb

Quitar acentos con Javascript

Recientemente tuve la necesidad de manejar cadenas con javascript, de tal forma que no contengan acentos.

Les comparto esta función Javascript para remover acentos y tildes de una cadena.

<!DOCTYPE html PUBLIC «-//W3C//DTD XHTML 1.0 Transitional//EN» «http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd»>
<html xmlns=»http://www.w3.org/1999/xhtml»>
<head>
<meta http-equiv=»Content-Type» content=»text/html; charset=utf-8″ /> <!– Esto es muy importante–>
<title>Quitar acentos a cadena con Javascript</title>
<script>
function remover_acentos(str) {

var map={
À’:’A’,’Á’:’A’,’Â’:’A’,’Ã’:’A’,’Ä’:’A’,’Å’:’A’,’Æ’:’AE’,’Ç’:’C’,’È’:’E’,’É’:’E’,’Ê’:’E’,’Ë’:’E’,’Ì’:’I’,’Í’:’I’,’Î’:’I’,’Ï’:’I’,’Ð’:’D’,’Ñ’:’N’,’Ò’:’O’,’Ó’:’O’,’Ô’:’O’,’Õ’:’O’,’Ö’:’O’,’Ø’:’O’,’Ù’:’U’,’Ú’:’U’,’Û’:’U’,’Ü’:’U’,’Ý’:’Y’,’ß’:’s’,’à’:’a’,’á’:’a’,’â’:’a’,’ã’:’a’,’ä’:’a’,’å’:’a’,’æ’:’ae’,’ç’:’c’,’è’:’e’,’é’:’e’,’ê’:’e’,’ë’:’e’,’ì’:’i’,’í’:’i’,’î’:’i’,’ï’:’i’,’ñ’:’n’,’ò’:’o’,’ó’:’o’,’ô’:’o’,’õ’:’o’,’ö’:’o’,’ø’:’o’,’ù’:’u’,’ú’:’u’,’û’:’u’,’ü’:’u’,’ý’:’y’,’ÿ’:’y’,’Ā’:’A’,’ā’:’a’,’Ă’:’A’,’ă’:’a’,’Ą’:’A’,’ą’:’a’,’Ć’:’C’,’ć’:’c’,’Ĉ’:’C’,’ĉ’:’c’,’Ċ’:’C’,’ċ’:’c’,’Č’:’C’,’č’:’c’,’Ď’:’D’,’ď’:’d’,’Đ’:’D’,’đ’:’d’,’Ē’:’E’,’ē’:’e’,’Ĕ’:’E’,’ĕ’:’e’,’Ė’:’E’,’ė’:’e’,’Ę’:’E’,’ę’:’e’,’Ě’:’E’,’ě’:’e’,’Ĝ’:’G’,’ĝ’:’g’,’Ğ’:’G’,’ğ’:’g’,’Ġ’:’G’,’ġ’:’g’,’Ģ’:’G’,’ģ’:’g’,’Ĥ’:’H’,’ĥ’:’h’,’Ħ’:’H’,’ħ’:’h’,’Ĩ’:’I’,’ĩ’:’i’,’Ī’:’I’,’ī’:’i’,’Ĭ’:’I’,’ĭ’:’i’,’Į’:’I’,’į’:’i’,’İ’:’I’,’ı’:’i’,’IJ’:’IJ’,’ij’:’ij’,’Ĵ’:’J’,’ĵ’:’j’,’Ķ’:’K’,’ķ’:’k’,’Ĺ’:’L’,’ĺ’:’l’,’Ļ’:’L’,’ļ’:’l’,’Ľ’:’L’,’ľ’:’l’,’Ŀ’:’L’,’ŀ’:’l’,’Ł’:’L’,’ł’:’l’,’Ń’:’N’,’ń’:’n’,’Ņ’:’N’,’ņ’:’n’,’Ň’:’N’,’ň’:’n’,’ʼn’:’n’,’Ō’:’O’,’ō’:’o’,’Ŏ’:’O’,’ŏ’:’o’,’Ő’:’O’,’ő’:’o’,’Œ’:’OE’,’œ’:’oe’,’Ŕ’:’R’,’ŕ’:’r’,’Ŗ’:’R’,’ŗ’:’r’,’Ř’:’R’,’ř’:’r’,’Ś’:’S’,’ś’:’s’,’Ŝ’:’S’,’ŝ’:’s’,’Ş’:’S’,’ş’:’s’,’Š’:’S’,’š’:’s’,’Ţ’:’T’,’ţ’:’t’,’Ť’:’T’,’ť’:’t’,’Ŧ’:’T’,’ŧ’:’t’,’Ũ’:’U’,’ũ’:’u’,’Ū’:’U’,’ū’:’u’,’Ŭ’:’U’,’ŭ’:’u’,’Ů’:’U’,’ů’:’u’,’Ű’:’U’,’ű’:’u’,’Ų’:’U’,’ų’:’u’,’Ŵ’:’W’,’ŵ’:’w’,’Ŷ’:’Y’,’ŷ’:’y’,’Ÿ’:’Y’,’Ź’:’Z’,’ź’:’z’,’Ż’:’Z’,’ż’:’z’,’Ž’:’Z’,’ž’:’z’,’ſ’:’s’,’ƒ’:’f’,’Ơ’:’O’,’ơ’:’o’,’Ư’:’U’,’ư’:’u’,’Ǎ’:’A’,’ǎ’:’a’,’Ǐ’:’I’,’ǐ’:’i’,’Ǒ’:’O’,’ǒ’:’o’,’Ǔ’:’U’,’ǔ’:’u’,’Ǖ’:’U’,’ǖ’:’u’,’Ǘ’:’U’,’ǘ’:’u’,’Ǚ’:’U’,’ǚ’:’u’,’Ǜ’:’U’,’ǜ’:’u’,’Ǻ’:’A’,’ǻ’:’a’,’Ǽ’:’AE’,’ǽ’:’ae’,’Ǿ’:’O’,’ǿ’:’o’
};

var res=»; //Está variable almacenará el valor de str, pero sin acentos y tildes
for (var i=0;i<str.length;i++)
{
c=str.charAt(i);res+=map[c]||c;
}
return res;
}
alert(remove_accent(«ñ»));
</script>
</head>

<body>
</body>
</html>

Ver errores de PHP aunque no estén configurado en el servidor

En algunas ocasiones tenemos errores en nuestro código que interrumpen la ejecución de la página.
como por ejemplo una clase/función no definida.

Hay dos posibles soluciones:

En  tu PHP.ini la variable de esta manera:

display_errors = Off
cambiar a  modo on: display_errors = On

Pero si no tenemos acceso a la configuración del server, poner las siguientes dos lineas de código al «principio» de la página donde se localiza el error.

<?php
error_reporting(E_ALL);  //NO lleva comillas
ini_set(‘display_errors‘, ‘1‘);  //Los parámetros si llevan comillas 
?>

Otra función para ver los errores en la página es la siguiente: error_get_last()

La cual retorna un arreglo que podemos ver con un

print_r(error_get_last());

Función PHP para remover todo código Javascript

Con la siguiente función podrán remover todos los códigos Javascript almacenados en una variable.

Por ejemplo, si están usando Fckeditor y no desean que alguien pueda insertar un código Javascript, esta función les servirá de mucho.

<?php
function remover_javascript($html)
{
$javascript = ‘/<script[^>]*?>.*?<\/script>/si’;  //Expresión regular buscará todos los códigos Javascripts 
$html = preg_replace($javascript, «», $html);
$javascript = ‘/<script[^>]*?javascript{1}[^>]*?>.*?<\/script>/si’;
$html = preg_replace($javascript, «», $html); //Expresión regular buscará todos los códigos Javascripts 
return $html;
}

//Ejemplo de uso

$html = «<html><head><script>alert(‘Hola mundo’);</script></head><body><h2>Hola</h2></body> </html>»;

echo remover_javascript($html);

//Retornará

<html><head></head><body><h2>Hola</h2></body> </html>

?>

Como denegar acceso un rango de Ips con PHP

Para excluir el acceso a nustra web a  un rango de direcciones con PHP  podemos utilizar el siguiente script

$ip =  $_server[‘REMOTE_ADDR’]; //Regresa IP del servidor
$rango = ‘189.142’;  //Rango a expluir

if (strpos($ip, $rango) !== FALSE){
die(«NO TIENES PERMITIDO EL ACCESO»); //función die(«mensaje»); detiene la ejecución de todo código y muestra un mensaje
}

Nota: De preferencia, esta validación debe ir al principio de la página!

Como proteger los IDs enviados por la URL Mysql y PHP

Nota: tutorial para bases de datos Mysql

Supongamos que en mi sitio Web tengo una sección clásica de artículos en mi sitio Web.  Para poder mostrar el detalle de cada articulo envio un id para especificar al sistema cual es  articulo.php?id_articulo=2, osea que voy a dar lectura en la tabla de la base de datos donde el identificador del articulo es 2. De cierto modo esto es inseguro. Para dar mayor seguridad les mostrare como crear un tipo de hash que tiene ida y vuelta. Por que recordemos que un hash no tiene vuelta.

Supongamos que nuestro código PHP donde mostramos nuestras noticias es el siguiente:
<?php
$q = «SELECT * FROM noticias«;
$r = mysql_query($q,$conexion);

while($r = mysql_fetch_array( $r ) ){
?>
<a href=”articulo.php?id_articulo=<?php echo $r[‘id_articulo’]?>”><?php echo $r[‘titulo_articulo’]?></a>
<? }
?>
Sigue leyendo