Lenguaje PHP

Login seguro PHP con MySQLi: Descargar

Login seguro PHP con MySQLi. La problemática actual se basa en la seguridad de nuestros sistemas y si observamos las estadísticas son miles de sitios que son violentados por accesos no deseados. Las historias de páginas hackeadas son numerosas en las noticias, los desarrolladores están buscando las mejores maneras de asegurar sus sitios. Sin embargo, los sistemas de login para acceder al sistema son los lugares preferidos por personas mal intencionadas.

Si vuestro sitio tiene un sistema de usuarios o un buscador de noticias, podrías estar en riesgo grave de ser vulnerado y los datos de tus usuarios podrían verse comprometidos severamente. Esta articulo mostrará un intento de hacer un login seguro con PHP. Por lo tanto, podemos haber perdido algunos concejos en nuestro código.

Login seguro PHP con MySQLi

A continuación, se muestra una lista de posibles ataques que este tutorial intenta opacar contra:

  • Inyecciones SQL
  • Hacking de sesión
  • Escucha de red
  • Cross Siete Scripting
  • Ataques de fuerza bruta
Login PHP con MySQLi
Login PHP con MySQLi

Cosas que se necesitará para lograr nuestro cometido.

Como vamos a usar el conjunto mysqli_ * de clases PHP para acceder a nuestra base de datos MySQL necesitaremos las siguientes versiones de PHP y mySQL.

  • PHP versión 5.3 o posterior
  • MySQL versión 4.1.3 o posterior

Ejemplo #01 Login de usuario

– Crear nuestra base de datos y tablas

CREATE DATABASE IF NOT EXISTS `login` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `login`;
--
-- Estructura de tabla para la tabla `users`
--

CREATE TABLE IF NOT EXISTS `users` (
  `user_id` int(10) unsigned NOT NULL auto_increment,
  `name` varchar(50) NOT NULL,
  `email` varchar(60) NOT NULL,
  `password` varchar(60) NOT NULL,
  `social_id` varchar(100) NOT NULL,
  `picture` varchar(250) NOT NULL,
  `created` datetime NOT NULL,
  PRIMARY KEY  (`user_id`),
  KEY `email` (`email`),
  KEY `login` (`password`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

– La conexion con la base de datos y sesiones

<?php 
ob_start();
session_start();
require_once 'config.php'; 
?>
<?php 
    if( !empty( $_POST )){
        try {
            $user_obj = new Cl_User();
            $data = $user_obj->login( $_POST );
            if(isset($_SESSION['logged_in']) && $_SESSION['logged_in']){
                header('Location: home.php');
            }
        } catch (Exception $e) {
            $error = $e->getMessage();
        }
    }
    //print_r($_SESSION);
    if(isset($_SESSION['logged_in']) && $_SESSION['logged_in']){
        header('Location: home.php');
    }
?>
Login seguro php con mysqli
Login seguro php con mysqli

Nota:

Al recibir comentarios acerca del script se optó por actualizar algunas brechas de seguridad.

Bueno, espero que les sirva el código.

Descargar Script Login PHP

login_seguro_php_mysqli

[divider]

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 5 / 5. Recuento de votos: 2

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Mostrar más

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.
Botón volver arriba
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Privacidad