Bebify Cuestiones Técnicas

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 22

-Error front end -Quedar fijo el banner

Tablas pendientes
- Subcategorías archivo buscador.php
- usuarios acceso.php / login.php

Crear trigger para Validar fecha por defecto


CREATE TRIGGER comprasproductos_OnInsert BEFORE INSERT ON `comprasproduct
os` FOR EACH ROW SET NEW.fecha = CURRENT_DATE;
Tabla pagos
CREATE TABLE `pagos` ( `IdPago` int(11) NOT NULL,
`FechaAutorizado` date NOT NULL, `FechaPago` date, `Estatus`
int(1) NOT NULL DEFAULT 0, `IdFactura` int(11) NOT NULL,
`ArchivoPago` varchar(255) COLLATE utf8_spanish_ci NOT
NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8
COLLATE=utf8_spanish_ci;

Crear trigger para Validar fecha por defecto


Solución
CREATE TRIGGER pagos_OnInsert BEFORE INSERT ON pagos FOR EACH ROW SET NEW
.FechaPago = CURRENT_DATE;

Tabla pedidos
CREATE TABLE `pedidos` (
`IdPedido` int(11) NOT NULL,
`Fecha` date,
`Folio` varchar(10) COLLATE utf8_spanish_ci NOT NULL,
`IdCliente` int(11) NOT NULL,
`IdSucursal` int(11) NOT NULL,
`Total` decimal(10,0) NOT NULL,
`Comentarios` varchar(255) COLLATE utf8_spanish_ci NOT
NULL,
`CostoEnvio` decimal(10,0) NOT NULL,
`Descuento` decimal(10,0) NOT NULL,
`FechaAutorizado` date NOT NULL,
`FechaEntegado` date NOT NULL,
`IdPago` int(11) NOT NULL,
`Estatus` int(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
COLLATE=utf8_spanish_ci;

Solución
CREATE TRIGGER pedidos_OnInsert BEFORE INSERT ON
pedidos FOR EACH ROW SET NEW.Fecha = CURRENT_DATE;
Tabla usuarios
CREATE TABLE `usuarios` (
`IdUsuario` int(11) NOT NULL,
`Correo` varchar(100) COLLATE utf8_spanish_ci NOT NULL,
`Contrasena` varchar(255) COLLATE utf8_spanish_ci NOT
NULL,
`FechaRegistro` date,
`IdRol` int(11) NOT NULL,
`Estatus` int(1) NOT NULL,
`IdPersona` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
COLLATE=utf8_spanish_ci;

Solución
CREATE TRIGGER usuarios_OnInsert BEFORE INSERT ON usuarios FOR EACH ROW S
ET NEW.FechaRegistro = CURRENT_DATE;

Errores front-end
Fatal error: Uncaught mysqli_sql_exception: In aggregated query without GROUP BY,
expression #1 of SELECT list contains nonaggregated column 'bebify.c.IdCategoria'; this is
incompatible with sql_mode=only_full_group_by in C:\laragon\www\be-main\
buscador.php:1922 Stack trace: #0 C:\laragon\www\be-main\buscador.php(1922):
mysqli_query(Object(mysqli), 'SELECT c.IdCate...') #1 {main} thrown in C:\laragon\
www\be-main\buscador.php on line 1922

Solución
SET GLOBAL sql_mode=(SELECT
REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
Index
No aparece botón añadir al carrito ni tampoco precio

Index
Al ingresar en apartado de index, el botón de registrarse no
se ve igual que en el demo.

<?php

if ($usr_idUsuario == null) {

?>
<div class="elementor-section elementor-top-section elementor-element
elementor-element-31159ab ml-md-4 mr-md-4 elementor-section-content-middle
elementor-section-boxed elementor-section-height-default elementor-section-
height-default" data-id="31159ab" data-element_type="section" data-
settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;anima
tion&quot;:&quot;none&quot;}">

<div class="elementor-container elementor-column-gap-default">


<div class="elementor-column elementor-col-50 elementor-top-
column elementor-element elementor-element-7bab72c" data-id="7bab72c" data-
element_type="column">
<div class="elementor-widget-wrap elementor-element-
populated">
<div class="elementor-element elementor-element-b2984bf
mb-2 elementor-widget__width-initial elementor-widget elementor-widget-
heading animated fadeIn" data-id="b2984bf" data-element_type="widget" data-
settings="{&quot;_animation&quot;:&quot;fadeIn&quot;}" data-
widget_type="heading.default">
<div class="elementor-widget-container">
<p class="elementor-heading-title elementor-
size-default">¿Aún no tienes cuenta con nosotros? <br><br><strong>Regístrate
y empieza a disfrutar del mejor servicio de bebidas para tu negocio
</strong></p>
</div>
</div>
</div>
</div>
<div class="elementor-column elementor-col-50 elementor-top-
column elementor-element elementor-element-380f26f" data-id="380f26f" data-
element_type="column" data-
settings="{&quot;background_background&quot;:&quot;classic&quot;}">
<div class="elementor-widget-wrap elementor-element-
populated">
<div class="elementor-background-overlay"></div>
<div class="elementor-element elementor-element-c135c59
elementor-widget__width-initial elementor-widget elementor-widget-
porto_button" data-id="c135c59" data-element_type="widget" data-
widget_type="porto_button.default">
<div class="elementor-widget-container">
<a aria-label="button" class="btn btn-xl btn-
primary btn-block" href="registro.php"><span>Regístrate Ahora</span></a>
</div>
</div>
</div>
</div>
</div>
</div>

<?php }

?>

Conócenos/Contáctanos
Se agregaron esas líneas
<!--Espacio anterior al banner de registro -->
<?php
include 'componentes/espacio.php';
?>
<!--Banner registro-->
<?php

if ($usr_idUsuario == null) {
?>

<div class="elementor-section
elementor-top-section elementor-element elementor-element-54a15935 ml-md-4
mr-md-4 elementor-section-content-middle elementor-section-boxed elementor-
section-height-default elementor-section-height-default" data-id="54a15935"
data-element_type="section" data-
settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;anima
tion&quot;:&quot;none&quot;}">

<div class="elementor-
container elementor-column-gap-default">
<div class="elementor-
column elementor-col-50 elementor-top-column elementor-element elementor-
element-1d970955" data-id="1d970955" data-element_type="column">
<div
class="elementor-widget-wrap elementor-element-populated">
<div
class="elementor-element elementor-element-471e46e9 mb-2 elementor-
widget__width-initial elementor-invisible elementor-widget elementor-widget-
heading" data-id="471e46e9" data-element_type="widget" data-
settings="{&quot;_animation&quot;:&quot;fadeIn&quot;}" data-
widget_type="heading.default">
<div
class="elementor-widget-container">
<p
class="elementor-heading-title elementor-size-default">¿Aún no tienes cuenta
con nosotros? <br><br><strong>Regístrate y empieza a disfrutar del mejor
servicio de bebidas para tu negocio </strong></p>
</div>
</div>
</div>
</div>
<div class="elementor-
column elementor-col-50 elementor-top-column elementor-element elementor-
element-b0f6690" data-id="b0f6690" data-element_type="column" data-
settings="{&quot;background_background&quot;:&quot;classic&quot;}">
<div
class="elementor-widget-wrap elementor-element-populated">
<div
class="elementor-background-overlay"></div>
<div
class="elementor-element elementor-element-5d99b8fc elementor-widget__width-
initial elementor-widget elementor-widget-porto_button" data-id="5d99b8fc"
data-element_type="widget" data-widget_type="porto_button.default">
<div
class="elementor-widget-container">
<a aria-
label="button" class="btn btn-xl btn-primary btn-block"
href="registro.php"><span>Regístrate Ahora</span></a>
</div>
</div>
</div>
</div>
</div>
</div>

<?php }

?>
<!--Banner registro cierre-->
<!--Espacio anterior al banner de registro -->
<?php
include 'componentes/espacio.php';
?>
<!--Banner registro-->
<?php

if ($usr_idUsuario == null) {
?>

<div class="elementor-section
elementor-top-section elementor-element elementor-element-54a15935 ml-md-4
mr-md-4 elementor-section-content-middle elementor-section-boxed elementor-
section-height-default elementor-section-height-default" data-id="54a15935"
data-element_type="section" data-
settings="{&quot;background_background&quot;:&quot;classic&quot;,&quot;anima
tion&quot;:&quot;none&quot;}">

<div class="elementor-
container elementor-column-gap-default">
<div class="elementor-
column elementor-col-50 elementor-top-column elementor-element elementor-
element-1d970955" data-id="1d970955" data-element_type="column">
<div
class="elementor-widget-wrap elementor-element-populated">
<div
class="elementor-element elementor-element-471e46e9 mb-2 elementor-
widget__width-initial elementor-invisible elementor-widget elementor-widget-
heading" data-id="471e46e9" data-element_type="widget" data-
settings="{&quot;_animation&quot;:&quot;fadeIn&quot;}" data-
widget_type="heading.default">
<div
class="elementor-widget-container">
<p
class="elementor-heading-title elementor-size-default">¿Aún no tienes cuenta
con nosotros? <br><br><strong>Regístrate y empieza a disfrutar del mejor
servicio de bebidas para tu negocio </strong></p>
</div>
</div>
</div>
</div>
<div class="elementor-
column elementor-col-50 elementor-top-column elementor-element elementor-
element-b0f6690" data-id="b0f6690" data-element_type="column" data-
settings="{&quot;background_background&quot;:&quot;classic&quot;}">
<div
class="elementor-widget-wrap elementor-element-populated">
<div
class="elementor-background-overlay"></div>
<div
class="elementor-element elementor-element-5d99b8fc elementor-widget__width-
initial elementor-widget elementor-widget-porto_button" data-id="5d99b8fc"
data-element_type="widget" data-widget_type="porto_button.default">
<div
class="elementor-widget-container">
<a aria-
label="button" class="btn btn-xl btn-primary btn-block"
href="registro.php"><span>Regístrate Ahora</span></a>
</div>
</div>
</div>
</div>
</div>
</div>

<?php }

?>

Bebify Mi cuenta
Al agregar un producto al carrito de compra, corregir esta
parte del nombre para que se vea bien

Lanzar error 404 al buscar un producto que no está disponible


al realizar la búsqueda.
Modificación de procedimiento almacenado al cual se está
haciendo referencia en el archivo producto.php. Dicho
procedimiento
CREATE PROCEDURE `productoid` (IN `idp` INT, IN `idm` INT) NO SQL
select
p.IdProducto,p.SKU,p.Marca,p.Nombre,p.Imagen,p.Descripcion,p.Estatus,p.IdSub
categoria,p.EsPaquete,p.PiezasPaquete,c.Categoria,s.SubCategoria,pm.Precio
from productos p INNER JOIN subcategorias s on
s.IdCategoria=p.IdSubcategoria INNER JOIN categoria c on
s.IdCategoria=c.IdCategoria inner join precioproductomembresia pm on
p.IdProducto=pm.IdProducto WHERE p.Estatus=true and p.IdProducto=idp and
c.Estatus=true and s.Estatus=true and pm.IdMembresia=idm$$

Se va a utilizer la misma sentencia para el procedimiento


almacenado productoid, pero se va a agregar un campo
extra que es el de id categoría c.IdCategoria
Se modificaron algunos parámetros del código del archivo
producto.php
<div class="breadcrumbs-wrap pt-left">
<ul class="breadcrumb" itemscope
itemtype="https://schema.org/BreadcrumbList">
<li class="home"
itemprop="itemListElement" itemscope
itemtype="https://schema.org/ListItem"><a itemprop="item" href="./index.php"
title="Go to Home Page"><span itemprop="name">Home</span></a>
<meta itemprop="position"
content="1" /><i class="delimiter delimiter-2"></i>
</li>
<li itemprop="itemListElement" itemscope
itemtype="https://schema.org/ListItem"><a itemprop="item"
href="./buscador.php"><span itemprop="name">Productos</span></a>
<meta itemprop="position"
content="2" /><i class="delimiter delimiter-2"></i>
</li>

<li><span itemprop="itemListElement"
itemscope itemtype="https://schema.org/ListItem"><a itemprop="item"
href="buscador.php?categoria=<?php echo $dtpro['IdCategoria'] ?>"><span
itemprop=" name"><?php echo $dtpro['Categoria'] ?></span></a>
<meta itemprop="position"
content="3" />
</span>, <span
itemprop="itemListElement" itemscope
itemtype="https://schema.org/ListItem"><a itemprop="item"
href="buscador.php?subcategoria=<?php echo $dtpro['IdSubcategoria'] ?
>"><span itemprop="name"><?php echo $dtpro['SubCategoria'] ?></span></a>
<meta itemprop="position"
content="4" />
</span> , <i class="delimiter
delimiter-2"></i><span itemprop="itemListElement" itemscope
itemtype="https://schema.org/ListItem"><a itemprop="item" href="#"><span
itemprop="name"><?php echo $dtpro['Marca'] ?></span></a>
<meta itemprop="position"
content="5" />
</span>
</li>
<li><?php echo $dtpro['Nombre'] ?></li>
</ul>
</div>

Al seleccionar un producto y mostrar sus enlaces funciona el


de categoría, falta subcategorías y marca.
Falta agregar y usar el mismo formato que se muestra en la parte de la
descripción del producto. En archivo producto.php
En el demo se muestra la etiqueta del producto, entonces la cuestión es
saber si se necesita agregar esa parte en la base de datos como algún
campo extra o no.

Se debe de agregar esas etiquetas y actualmente en el archivo


producto.php no se muestran.
Las etiquetas que se muestran hasta arriba > Productos > Agua > Agua
Mineral > Topo chico

Tomar como referencia la página que está y agregar apartados que faltan,
junto con la cuestión
Al darle clic en el filtro de mostrar en el apartado de buscador, sale
error.
Se creó otra tabla extra para unir la tabla de pedidos y productos

Esta tabla detallespedidos es para agregar los productos que van a


estar relacionados con la tabla pedidos. De igual forma se van a
crear sus llaves foráneas y se va a crear la llave foránea que
relacione el IdPedido con los productos.
--Indices de la tabla detallespedidos

ALTER TABLE `detallespedidos`

ADD KEY `productos` (`IdProducto`),

ADD KEY `pedidos` (`IdPedido`);

En la parte del buscador cuando se quiere agregar algún producto al carro


de compras

Al darle click al botón ver productos, va a redireccionar al apartado de


productos
Con el parámetro de tipo get buscador?s=a en la url y va a poder
mostrar los productos referentes de acuerdo, pero no sale como la
página que salen más filtros,
Tomar como referencia eso.
Agregar además filtro de búsqueda por precio.
Además de que se agregan abajo subcategoria, categoria y marca
Arreglar duplicado de categoría al elegir la marca del producto

Levantamiento de pedidos

Se creó la tabla pedidosproductos para levantamiento de pedidos

CREATE TABLE `pedidosproductos` (

`IdProductopedido` int(11) NOT NULL,

`IdPedido` int(11) DEFAULT NULL,

`IdProducto` varchar(255) DEFAULT NULL,

`cantidadproducto` varchar(255) DEFAULT NULL,

`costoproducto` varchar(255) DEFAULT NULL,

`IdCompraEntregado` varchar(255) DEFAULT NULL,

`cantidadCompraEntregado` varchar(255) DEFAULT NULL,

`estatus` int(11) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

También podría gustarte