PHP - Login con límite de intentos usando MySQL

En este artículo de programación con PHP y MySQL te mostraré cómo implementar un login, autenticación o inicio de sesión con límite de intentos, teniendo a MySQL como base de datos. Con el límite de intentos me refiero a que cuando el usuario coloque la contraseña incorrecta, se irá aumentando un contador de errores o de intentos fallidos. Si llega a determinado número, se bloqueará el acceso hasta que el contador se reinicie. Este ejemplo completo de código que te mostraré tiene el módulo de login, de creación de usuarios y de usuarios en donde se pueden borrar los intentos fallidos de cualquier usuario. Además, solo los usuarios que hayan iniciado sesión pueden acceder a la administración de usuarios del sistema. Recuerda que para guardar todos los datos vamos a usar MySQL y vamos a usar PHP como lenguaje de programación. ...

enero 21, 2021 · 8 min · 1689 palabras · Parzibyte

MySQL - Inner join con count usando subconsulta

En este artículo de consultas con MySQL te enseñaré un ejemplo y la sintaxis de cómo unir dos tablas pero para la segunda tabla obtener el conteo agrupado por un ID usando COUNT. Básicamente será un ejemplo de count con inner join en MySQL usando subconsultas; y al final verás que de hecho no vamos a usar inner join, bastará con la subquery. ...

enero 20, 2021 · 3 min · 531 palabras · Parzibyte

PHP - Comprobar si es primera visita

En este post de programación con PHP te enseñaré cómo comprobar si es la primera vez que un usuario entra a nuestra web. Es decir, saber si el usuario visita la página por primera vez o si ya la ha visitado antes. Para esto vamos a usar cookies y la función setcookie de PHP. ...

enero 20, 2021 · 3 min · 521 palabras · Parzibyte

Carrito de compras con JavaScript

En este post de JavaScript y desarrollo web te mostraré cómo implementar un carrito de compras en el lado del cliente con JS. Será un ejemplo completo de un proyecto en donde además de tener el carrito de compras tendremos un módulo de tienda (pero no habrá transacciones ni pagos reales) y módulo de gestión de productos. Este proyecto se basa ampliamente en el CRUD con AJAX, PHP y MySQL publicado anteriormente, pero agregamos la gestión del carrito de compras dentro de localStorage. Como siempre, te dejaré el código completo y listo para descargar. ...

enero 19, 2021 · 8 min · 1553 palabras · Parzibyte

Clase para carrito de compras con JavaScript y LocalStorage

En este post te mostraré una librería de JavaScript para guardar un carrito de compras en JavaScript del lado del cliente. Será una simple clase que encerrará el comportamiento y brindará funciones para todas las operaciones. Como dice el título, se usará localStorage para guardar y recuperar los valores, de este modo no importa el lenguaje del lado del servidor, pues se usará el lado del cliente. Por ahora te mostraré solo la librería/Clase, no su uso. Ya más adelante te traeré un ejemplo completo. ...

enero 19, 2021 · 3 min · 587 palabras · Parzibyte

CRUD con PHP, MySQL y AJAX

En este post te mostraré un ejemplo completo de CRUD que hace las operaciones fundamentales de la base de datos usando MySQL y PHP, pero además las llamadas se hacen con AJAX desde JavaScript. Al final te dejaré el código completo que podrás descargar, probar y modificar, mismo que tendrá todas las operaciones para enviar y recibir datos desde JavaScript a un servidor PHP que se conecta a MySQL. Básicamente todo se hará del lado del cliente, no vamos a procesar formularios con PHP, solo llamadas AJAX con JSON. Así que tendremos un CRUD con PHP y AJAX. No vamos a usar ninguna librería como React, Vue o Angular; será JavaScript puro. ...

enero 17, 2021 · 12 min · 2544 palabras · Parzibyte

PHP - Enviar código de error 500

En este corto post de programación en PHP y servidores veremos cómo responder con un código de error, esto es, un código HTTP 500. De este modo le indicamos al cliente que hubo un error interno del servidor. ...

enero 17, 2021 · 1 min · 106 palabras · Parzibyte

PHP - Subir varios archivos

Recientemente necesitaba transferir unos archivos de manera inalámbrica desde un teléfono a mi computadora. Lo más común en pleno 2021 sería enviarlos por Telegram, Google Drive, etcétera y luego descargarlo en la computadora, pero con la pésima calidad de internet que da mi proveedor de internet (cof cof Telmex) eso tardaría demasiado tiempo. Así que escribí un pequeño script de PHP que sirve para subir varios archivos desde un formulario al servidor de PHP. Realmente es algo muy sencillo, solo es trabajo con el arreglo de $_FILES y move_uploaded_file, algo similar a lo visto en mi otro post. ...

enero 16, 2021 · 2 min · 288 palabras · Parzibyte

Árbol binario en Python

En este post vamos a implementar la estructura de datos Árbol binario en Python, además de implementar la declaración de un Nodo o rama. También veremos cómo agregar al nodo sus partes izquierda y derecha, el método para agregar un valor de manera recursiva (y acomodarlo de acuerdo a la raíz) al árbol, recorrido inorden, postorden y preorden, así como la búsqueda de determinado valor en el árbol. Básicamente implementaremos un árbol en Python con los métodos más comunes. Recuerda que los árboles binarios son una estructura de datos bastante interesante en donde la búsqueda de un elemento se hace de manera rápida por la naturaleza del mismo. ...

enero 15, 2021 · 6 min · 1220 palabras · Parzibyte

Ejemplo de makefile para Python

Anteriormente publiqué un makefile para compilar programas en C. Ahora te mostraré un ejemplo de makefile para Python que es más que nada algo como un script para automatizar las cosas. Será muy simple pero servirá para varias cosas: formatear el código fuente, ejecutarlo y pasarle datos de entrada escribiendo únicamente make. ...

enero 14, 2021 · 1 min · 213 palabras · Parzibyte