TECNOLOBO

No recuerdas tu codigo?
Se te olvido como se hace?

Aqui podras guardar lo que necesiten
Y cuando sea necesesario

Creado por julian gomez
iiiiii

Productos segun categorias



Descripcion

Este ejemplo muestra como traer los productos de c

html


tablas :
    productos : id_producto,descripcion,fotodelproducto	,id_categoria
    categorias : categoria_id,categoria_nombre, categoria_id

array que retorna:

Array
(
    [0] => Array
        (
            [categoria] => Mercafuller
            [productos] => Array
                (
                    [0] => Array
                        (
                            [0] => Array
                                (
                                    [0] => Array
                                        (
                                            [0] => esto es solo una prueba
                                            [1] => foto_producto.jpg
                                            [2] => 9
                                        )

                                    [1] => Array
                                        (
                                            [0] => sfsdfs
                                            [1] => foto_producto.jpg
                                            [2] => 10
                                        )

                                    [2] => Array
                                        (
                                            [0] => Producto fuller 0
                                            [1] => foto_producto.jpg
                                            [2] => 15
                                        )

                                    [3] => Array
                                        (
                                            [0] => Producto fuller 1
                                            [1] => foto_producto.jpg
                                            [2] => 16
                                        )

                                )

                            [1] => Array
                                (
                                    [0] => Array
                                        (
                                            [0] => Producto fuller 3
                                            [1] => foto_producto.jpg
                                            [2] => 17
                                        )

                                    [1] => Array
                                        (
                                            [0] => Producto fuller 4
                                            [1] => foto_producto.jpg
                                            [2] => 18
                                        )

                                    [2] => Array
                                        (
                                            [0] => Producto fuller 5
                                            [1] => foto_producto.jpg
                                            [2] => 19
                                        )

                                    [3] => Array
                                        (
                                            [0] => Producto fuller 6
                                            [1] => foto_producto.jpg
                                            [2] => 20
                                        )

                                )

                        )

                )

        )

    [1] => Array
        (
            [categoria] => Categorias de Productos
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [2] => Array
        (
            [categoria] => Accesorios para celulares
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [3] => Array
        (
            [categoria] => Celulares
            [productos] => Array
                (
                    [0] => Array
                        (
                            [0] => Array
                                (
                                    [0] => Array
                                        (
                                            [0] => hhhhhhhhhhhh
                                            [1] => WhatsApp_Image_2018_03_06_at_11.48.10_AM.jpeg
                                            [2] => 14
                                        )

                                    [1] => Array
                                        (
                                            [0] => calular 0
                                            [1] => foto_producto.jpg
                                            [2] => 23
                                        )

                                    [2] => Array
                                        (
                                            [0] => x celular
                                            [1] => foto_producto.jpg
                                            [2] => 27
                                        )

                                )

                        )

                )

        )

    [4] => Array
        (
            [categoria] => Accesorios PC
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [5] => Array
        (
            [categoria] => Baterías
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [6] => Array
        (
            [categoria] => Protectores
            [productos] => Array
                (
                    [0] => Array
                        (
                            [0] => Array
                                (
                                    [0] => Array
                                        (
                                            [0] => nosotras 0
                                            [1] => foto_producto.jpg
                                            [2] => 24
                                        )

                                )

                        )

                )

        )

    [7] => Array
        (
            [categoria] => Plásticos
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [8] => Array
        (
            [categoria] => Vidrio
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [9] => Array
        (
            [categoria] => Manos libres
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [10] => Array
        (
            [categoria] => Teclado
            [productos] => Array
                (
                    [0] => Array
                        (
                            [0] => Array
                                (
                                    [0] => Array
                                        (
                                            [0] => teclad 5
                                            [1] => foto_producto.jpg
                                            [2] => 25
                                        )

                                )

                        )

                )

        )

    [11] => Array
        (
            [categoria] => Monitor
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [12] => Array
        (
            [categoria] => Mouse
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [13] => Array
        (
            [categoria] => Gama Alta
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [14] => Array
        (
            [categoria] => Iphone 6
            [productos] => Array
                (
                    [0] => Array
                        (
                            [0] => Array
                                (
                                    [0] => Array
                                        (
                                            [0] => es una cortina decorativa para el hogar
                                            [1] => public_/img/productos/foto.jpg
                                            [2] => 8
                                        )

                                )

                        )

                )

        )

    [15] => Array
        (
            [categoria] => Samsung S8
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [16] => Array
        (
            [categoria] => Gama Media
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [17] => Array
        (
            [categoria] => Gama Baja
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [18] => Array
        (
            [categoria] => Adultos
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [19] => Array
        (
            [categoria] => Adultos
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

    [20] => Array
        (
            [categoria] => pppp555
            [productos] => Array
                (
                    [0] => Array
                        (
                        )

                )

        )

)
						

javascript


<?php
//modelo productosPorCategoria 
           select 
            c.categoria_nombre,
            p.id_producto, p.id_categoria,p.descripcion ,p.fotodelproducto 
            from 
            categorias as c , 
            productos as p 
            WHERE c.categoria_id = p.id_categoria 
            ORDER BY p.id_categoria asc


// array devuelto por la consula productosPorCategoria
[0] => Array
	(
        [0] => Array
              (
                [categoria_nombre] => Mercafuller
                [id_producto] => 9
                [id_categoria] => 1
                [descripcion] => esto es solo una prueba
                [fotodelproducto] => foto_producto.jpg
              )

       [1] => Array
              (
                [categoria_nombre] => Mercafuller
                [id_producto] => 10
                [id_categoria] => 1
                [descripcion] => sfsdfs
                [fotodelproducto] => foto_producto.jpg
              )
	);

// modelo getCategorias
select * from categorias where estado = 1
              
              

/***********************Function objetivo******************************************/

 			$categorias= $catalogo->getCategorias();
           
            $productosPorCategoria=$producto->getProductosByCategoria();

            //$array=array();
            
            $miarray=array();

            /*for categorias*/
            for ($a=0; $a <sizeof($categorias) ; $a++) { 
              	
              	// array que guardar los productos en grupos de a 8
                $productosArray= array();
              	
              	// esta vairbale se usa para permitir que solo en la variable $productosArray se guarden 8 productos
                $r=0;
                for ($i=0; $i <sizeof($productosPorCategoria) ; $i++) { 

                    //echo $categorias[$a]["categoria_id"] ."==". $productosPorCategoria[$i]["id_categoria"]."<br>";
                    if($categorias[$a]["categoria_id"] == $productosPorCategoria[$i]["id_categoria"]){

                        if($r<=7){

                            $detalleProducto=array(
                                $productosPorCategoria[$i]["descripcion"],
                                $productosPorCategoria[$i]["fotodelproducto"],
                                $productosPorCategoria[$i]["id_producto"]
                            );

                            array_push($productosArray, $detalleProducto);
                          	
                          	// cada vez que se introduce un 
                            $r++;
                        }

                    }

                }

            $miarray[$a]["categoria"]=$categorias[$a]["categoria_nombre"];
            $miarray[$a]["productos"] = array();

            array_push($miarray[$a]["productos"], array_chunk($productosArray, 4));
               

            }

            echo "<pre>";
            print_r($miarray);
            echo "<pre>";