Inicio » Cursos » App Minimarket con lector QR

Curso App Minimarket con lector QR

Capitulo 7 ➜ Generar el Código QR

¿Cómo generar un código QR con información de un producto en PHP?

Para generar un QR hacemos uso de la librería PHPQRCODE en nuestro proyecto, e indicaremos el valor que guardará el QR creando una imagen para usarla.

Para generar un QR hacemos uso de la librería PHPQRCODE en nuestro proyecto, e indicaremos el valor que guardará el QR creando una imagen para usarla.

<div class="row">
    <?php require "menu.php" ?>
    <div class="col-sm-9">
        <h1> PRODUCTOS</h1>

        <?php
            $accion = (isset($_GET['accion'])) ? $_GET['accion'] : "listar";

            switch($accion){
                case "listar":
                    ?>
                        <a href="<?php urlsite ?>?page=productos&accion=crear" class="btn btn-success">CREAR</a>

                        <table class="table">
                            <thead>
                                <th>ID</th>
                                <th>NOMBRE</th>
                                <th>IMAGEN</th>
                                <th>QR</th>
                                <th>ACCIÓN</th>
                            </thead>
                            <tbody>
                                <?php 
                                $u= $user->buscar("products","1");
                                foreach($u as $r){
                                    ?>
                                    <tr>
                                        <td><?php echo $r['id'] ?></td>
                                        <td><?php echo $r['nombre'] ?></td>
                                        <td><img src="img/<?php echo $r['imagen'] ?>" width="200"></td>
                                        <td><img src="img/qr/<?php echo $r['id'] ?>.png" width="200"></td>
                                        <td>
                                            <a href="<?php urlsite ?>?page=productos&accion=editar&id=<?php echo $r['id'] ?>" class="btn btn-success">EDITAR</a>
                                            <a href="<?php urlsite ?>?page=productos&accion=borrar&id=<?php echo $r['id'] ?>" class="btn btn-success">ELIMINAR</a>
                                        </td>
                                    </tr>
                                    <?php
                                }
                                ?>
                            </tbody>
                        </table>

                    <?php
                    
                break;
                case "crear":
                    if(isset($_POST['btncrear'])){

                        // subir imagen
                        $imagen = $_FILES['imagen']['name'];
                        if(move_uploaded_file($_FILES['imagen']['tmp_name'],'img/'.$imagen))
                            mensaje("Imagen subida");
                        else
                            mensaje("Error en subida de imagen");

                        
                        $data = "'".$_POST['nombre']."','".$_POST['descripcion']."',".$_POST['precio'].",".$_POST['stock'].",'".$imagen."',0,'".$_POST['categoria_id']."',0";

                        $u = $user->insertar("products",$data);
                        if($u){
                            /// qr
                            require_once "procesos/phpqrcode/qrlib.php";
                            $id = $user->lastInsertId();
                            QRcode::png($id,"img/qr/".$id.".png","L",10,5);
                            mensaje("<div class='alert alert-success'> PRODUCTO CREADO </div>");
                        }else{
                            mensaje("<div class='alert alert-danger'> PRODUCTO NO CREADO </div>");
                        }
                    }else{
                    ?>
                    
                        <form action="" method="post" enctype="multipart/form-data">                        
                            <div class="mb-3">
                            <input type="text" name="nombre" placeholder="NOMBRE:" class="form-control" required>
                            </div>
                            <div class="mb-3">
                            <textarea name="descripcion" placeholder="DESCRIPCIÓN:" class="form-control" required></textarea>
                            </div>
                            <div class="mb-3">
                            <input type="text" name="precio" placeholder="Precio:" class="form-control" required>
                            </div>
                            <div class="mb-3">
                            <input type="text" name="stock" placeholder="Stock:" class="form-control" required>
                            </div>
                            <div class="mb-3">
                            <input type="file" name="imagen" class="form-control" required>
                            </div>
                            <div class="mb-3">
                            <select name="categoria_id"  class="form-control">
                                <?php $c = $user->buscar("categories","1"); ?>
                                <?php foreach($c as $ca): ?>
                                <option value="<?php echo $ca['id'] ?>"><?php echo $ca['nombre'] ?></option>
                                <?php endforeach ?>
                            </select>
                            </div>
                            <div class="mb-3">
                            <input type="submit" name="btncrear" value="CREAR" class="btn btn-success">
                            </div>
                            
                            <input type="hidden" name="page" value="productos">
                            <input type="hidden" name="accion" value="crear">
                        </form>
                    <?php
                    }
                break;
                case "editar":
                    if(isset($_POST['btneditar'])){
                        
                        $imagen = "";
                        if(isset($_FILES['imagen'])){                            
                            if(move_uploaded_file($_FILES['imagen']['tmp_name'],'img/'.$_FILES['imagen']['name'])){
                                $imagen = ",imagen='".$_FILES['imagen']['name']."'";
                                mensaje("Imagen subida");
                            }                                
                            else
                                mensaje("Error en subida de imagen");
                        }

                        $data = "nombre='".$_POST['nombre']."',descripcion='".$_POST['descripcion']."',precio=".$_POST['precio'].",stock=".$_POST['stock'].$imagen;


                        $u = $user->actualizar("products",$data, "id=".$_POST['id']);
                        if($u){
                            mensaje("<div class='alert alert-success'> PRODUCTO ACTUALIZADO </div>");
                        }else{
                            mensaje("<div class='alert alert-danger'> PRODUCTO NO ACTUALIZADO </div>");
                        }
                    }else{
                        $u= $user->buscar("products","id=".$_GET['id']);
                        foreach($u as $r){
                        ?>
                        <form action="" method="post" enctype="multipart/form-data">
                            <div class="mb-3">
                            <input type="text" name="nombre" value="<?php  echo $r['nombre'] ?>" required>
                            </div>
                            <div class="mb-3">
                            <textarea name="descripcion" class="form-control" required><?php  echo $r['descripcion']?></textarea>
                            </div>
                            <div class="mb-3">
                            <input type="text" name="precio" value="<?php  echo $r['precio'] ?>" class="form-control" required>
                            </div>
                            <div class="mb-3">
                            <input type="text" name="stock" value="<?php  echo $r['stock'] ?>" class="form-control" required>
                            </div>
                            <div class="mb-3">
                            <img src="img/<?php  echo $r['imagen'] ?>" width="300">
                            </div>
                            <div class="mb-3">
                            <input type="file" name="imagen" class="form-control">
                            </div>
                            <div class="mb-3">
                            <input type="submit" name="btneditar" value="EDITAR" class="btn btn-success">
                            </div>

                            <input type="hidden" name="page" value="productos">
                            <input type="hidden" name="accion" value="editar">
                            <input type="hidden" name="id" value="<?php echo $r['id'] ?>">
                        </form>
                        <?php
                        }
                    }
                break;
                case "borrar":
                    if(isset($_GET['id'])){
                        $u = $user->borrar("products","id=".$_GET['id']);
                        if($u){
                            mensaje("<div class='alert alert-success'> PRODUCTO ELIMINADO </div>");
                        }else{
                            mensaje("<div class='alert alert-danger'> PRODUCTO NO ELIMINADO </div>");
                        }
                    }
                break;
            
            }



        ?>

    </div>
</div>

 


1158 visitas

« Capítulo 6 – CRUD producto

Capítulo 8 – API Rest »

Descarga el código del proyecto

Descarga el código fuente del proyecto adquiriendo el curso completo

Comprar

Más cursos que pueden interesarte

Más cursos

Codea Applications

México, Colombia, España, Venezuela, Argentina, Bolivia, Perú

© Copyright Codea::App Cursos de Programación Online | LATAM | 2020 - 2024