bazaar
Una tienda e-commerce sobre un microframework PHP propio - sin Laravel ni Symfony. Catálogo, carrito en sesión, Stripe Checkout, cuentas de clientes y un back office de administración completo, sobre sesiones endurecidas y únicamente sentencias preparadas.
Una tienda de comercio electrónico sobre un microframework PHP hecho a mano, sin Laravel, sin Symfony. Un catálogo de productos, un carrito en sesión, Stripe Checkout, cuentas de clientes y un back office de administración completo. Con los pagos no hay lugar para atajos, así que las sesiones están endurecidas y solo sentencias preparadas llegan a la base de datos.
Introducción
Los grandes frameworks PHP resuelven muchas cosas por ti, seguridad incluida. bazaar renuncia a ellos a propósito: un microframework escrito desde cero significa que tú mismo cuidas las sesiones, construyes tú mismo las consultas y eres el único responsable de que los datos del cliente no se filtren. No hay una capa que remiende en silencio tus descuidos.
Es un proyecto sobre disciplina, no sobre funcionalidades. La tienda hace exactamente lo que esperas de una tienda, pero todo su valor reside en que cada punto de contacto con el usuario y la base de datos es una frontera que hay que vigilar a mano y de forma consciente.
Un descenso deliberado al PHP desnudo
Cuando quitas el framework, la red de seguridad que normalmente vive en la configuración por defecto se va con él. El escapado, la protección de sesiones, el enlace de parámetros en las consultas, nada de eso es gratis ya. bazaar lo trata como una lección: para escribir una tienda segura en PHP desnudo, debes entender cada amenaza de la que un framework normalmente te protege.
La disciplina aquí es estimulante, porque no hay ningún sitio donde esconder un atajo. Si en algún lado pegaste una consulta a partir de cadenas o confiaste en datos de un formulario, se ve enseguida, y la responsabilidad es inequívocamente tuya.
Del carrito al pago
productos con precios, categorías y un estado de publicación.
líneas guardadas del lado del servidor, inmunes a la manipulación en el formulario.
el pago confiado a un proveedor especializado, sin tocar los datos de la tarjeta.
historial de pedidos para el cliente, un panel de administración completo para el propietario.
La clave está en los pasos dos y tres. El carrito vive del lado del servidor, así que los precios y las cantidades no son lo que vino del navegador sino lo que la tienda misma decidió. El pago va a Stripe, así que un número de tarjeta nunca pasa por nuestro código, lo que elimina del sistema la parte de responsabilidad más peligrosa.
La frontera que vigilas a mano
La tienda acepta pagos, así que los errores no son cosméticos. Ni una sola consulta se arma a partir de cadenas. Solo sentencias preparadas, siempre, porque es la única frontera que detiene de verdad una inyección SQL.
Cada entrada del exterior se trata como hostil hasta que se enlaza a un parámetro o se escapa. No es paranoia sino la única manera en que una tienda sin la red de un framework puede ser segura.
El resultado no es una tienda más rica en funcionalidades que las de Laravel, sino una tienda cuya seguridad entiendes hasta el fondo, porque la construiste tú mismo. Cada frontera es explícita, cada consulta parametrizada, y el elemento más sensible, los datos de la tarjeta, no vive en absoluto en nuestro sistema.
Dónde está la frontera y por qué se vigila
| Frontera | Vigilada por |
|---|---|
| Entrada de formulario | validación y escapado |
| Consulta a la base | solo sentencias preparadas |
| Carrito | del lado del servidor, sesión endurecida |
| Datos de la tarjeta | confiados a Stripe, nunca en nuestro poder |
Más proyectos
Más trabajos de la misma categoría - mira cómo abordamos retos parecidos.
¿Tiene un proyecto similar?
Escríbenos - el presupuesto es gratuito y llega en una hora.



