Como crear llave de seguridad en los formularios
De KumbiaPHP Framework Wiki
Revisión del 00:25 7 ago 2010 de 190.66.153.113 (discusión) (Página creada con 'Copiamos la clase y la guardamos en la siguiente dirección miapp/libs/security_key.php <source lang=php line> <?php class SecurityKey { /** * Genera un input tipo ...')
Copiamos la clase y la guardamos en la siguiente dirección
miapp/libs/security_key.php
<?php
class SecurityKey {
/**
* Genera un input tipo hidden con el valor de la llave
*
* @return string
*/
public static function generateKey(){
$h = date("G")>12 ? 1 : 0;
$time = uniqid().mktime($h, 0, 0, date("m"), date("d"), date("Y"));
$key = sha1($time);
$_SESSION['key'] = $key;
return "<input type='hidden' id='key' name='key' value='$key' />\r\n";
}
/**
* Devuelve el resultado de la llave almacenada en sesion
* con la enviada en el form
*
* @return boolean
*/
public static function isValid () {
$key = isset($_SESSION['key']) ? $_SESSION['key'] : null;
if( (!is_null($key) ) && ($key === Input::post('key')) ) {
return true;
} else {
return false;
}
}
/**
* Devuelve la ultima llave almacenada en sesion
*
* @return string
*/
public static function getKey() {
$key = isset($_SESSION['key']) ? $_SESSION['key'] : null;
return $key;
}
}
?>
Para cualquier comentario referente a esta clase, puedes acudir al IRC, la lista de correo o el Foro de KumbiaPHP.