Foros del Web » Programando para Internet » PHP »

Consulta por Fechas y Vendedor

Estas en el tema de Consulta por Fechas y Vendedor en el foro de PHP en Foros del Web. Hola, tengo un sistema de ventas, que me registra el valor de la venta y el vendedor que la hace, tengo una consuta para saber ...
  #1 (permalink)  
Antiguo 06/04/2018, 12:41
 
Fecha de Ingreso: octubre-2008
Ubicación: Colombia
Mensajes: 338
Antigüedad: 9 años, 11 meses
Puntos: 1
Busqueda Consulta por Fechas y Vendedor

Hola, tengo un sistema de ventas, que me registra el valor de la venta y el vendedor que la hace, tengo una consuta para saber por la fecha la venta del dia, pero a ese resultado quiero agregarle el vendedor, es decir que al consultar me del el valor del dia por cada vendedor. No se si me expliqué bien,. Este es el codigo que estoy utilizando

Código PHP:

<?php
                
include('config/connect.php');
                
$d1=$_GET['d1'];
                
$d2=$_GET['d2'];
                
$result $db->prepare("SELECT * FROM sales WHERE date BETWEEN :a AND :b ORDER by transaction_id DESC ");
                
$result->bindParam(':a'$d1);
                
$result->bindParam(':b'$d2);
                
$result->execute();
                for(
$i=0$row $result->fetch(); $i++){
            
?>
            <tr class="record">
            <td>STI-00<?php echo $row['transaction_id']; ?></td>
            <td><?php echo $row['date']; ?></td>
            <td><?php echo $row['name']; ?></td>
            <td><?php echo $row['invoice_number']; ?></td>
            <td style="text-align:right"><?php echo $row['amount']; ?></td>
            <td style="text-align:right">
            <?php echo $row['profit']; ?></td>
            </tr>
            <?php
                
}
            
?>
Ese codigo me funciona correctamente pero cuando le agrego el campo vendedor no me genera nada. ¿Qué debo agregar y cómo?

Agredezco su ayudita, Please.
__________________
Desarrollo de Aplicaciones de Escritorio, Sitios Web, Audio y Video en SISGUS
  #2 (permalink)  
Antiguo 06/04/2018, 13:04
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.372
Antigüedad: 3 años, 2 meses
Puntos: 253
Respuesta: Consulta por Fechas y Vendedor

la verdad no se como estas haciendo para agregarlo pues no colocaste el codigo, pero prueba así que sería lo lógico:

Código PHP:
Ver original
  1. $d1=$_GET['d1'];
  2. $d2=$_GET['d2'];
  3. $vendedor=$_GET['vendedor']; //AQUI RECIBES EL ID O CODIGO DE VENDEDOR
  4. $result = $db->prepare("SELECT * FROM sales WHERE date BETWEEN :a AND :b AND vendedor :c ORDER by transaction_id DESC ");
  5. $result->bindParam(':a', $d1);
  6. $result->bindParam(':b', $d2);
  7. $result->bindParam(':c', $vendedor); //AQUI AGREGAMOS EL VALOR A LA QUERY PREPARADA
  8. $result->execute();
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 06/04/2018, 13:10
 
Fecha de Ingreso: octubre-2008
Ubicación: Colombia
Mensajes: 338
Antigüedad: 9 años, 11 meses
Puntos: 1
Respuesta: Consulta por Fechas y Vendedor

Cita:
Iniciado por xfxstudios Ver Mensaje
la verdad no se como estas haciendo para agregarlo pues no colocaste el codigo, pero prueba así que sería lo lógico:

Código PHP:
Ver original
  1. $d1=$_GET['d1'];
  2. $d2=$_GET['d2'];
  3. $vendedor=$_GET['vendedor']; //AQUI RECIBES EL ID O CODIGO DE VENDEDOR
  4. $result = $db->prepare("SELECT * FROM sales WHERE date BETWEEN :a AND :b AND vendedor :c ORDER by transaction_id DESC ");
  5. $result->bindParam(':a', $d1);
  6. $result->bindParam(':b', $d2);
  7. $result->bindParam(':c', $vendedor); //AQUI AGREGAMOS EL VALOR A LA QUERY PREPARADA
  8. $result->execute();
Ya lo que propones le hice, pero agregué algo mas que propones pero se me queda la pagina en blanco
__________________
Desarrollo de Aplicaciones de Escritorio, Sitios Web, Audio y Video en SISGUS
  #4 (permalink)  
Antiguo 06/04/2018, 16:03
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.796
Antigüedad: 9 años
Puntos: 213
Respuesta: Consulta por Fechas y Vendedor

¿Y el código?

Datos, datos... No puedo hacer ladrillos sin arcilla.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #5 (permalink)  
Antiguo 06/04/2018, 16:32
 
Fecha de Ingreso: octubre-2008
Ubicación: Colombia
Mensajes: 338
Antigüedad: 9 años, 11 meses
Puntos: 1
Busqueda Respuesta: Consulta por Fechas y Vendedor

Este es todo mi codigo, asi lo llevo ahora

Código PHP:

<div class="col-md-12">
                <div class="widget">
                    <header class="widget-header">
                        <h4 class="widget-title">Reporte de Ventas</h4>
                    </header><!-- .widget-header -->
                    <hr class="widget-separator">
                    <div class="widget-body">
                        
                        
                        
                <form action="cashier_report.php" method="get" class="form-horizontal">
                <center><strong>De : <input type="text" style="width: 223px; padding:14px;" name="d1" class="tcal" value="" placeholder="mm/dd/aaaa" /> A: <input type="text" style="width: 223px; padding:14px;" name="d2" class="tcal" value="" placeholder="mm/dd/aaaa" />
                    
                    <select name="cashier" class="form-horizontal" data-plugin="select2" class="tcal" value="">
                                <option></option>
                                    <?php
                                    
include('config/connect.php');
                                    
$result $db->prepare("SELECT * FROM loggeous");
                                        
$result->bindParam(':userid'$res);
                                        
$result->execute();
                                        for(
$i=0$row $result->fetch(); $i++){
                                    
?>
                                        <option><?php echo $row['nombre']; ?></option>
                                    <?php
                                    
}
                                    
?>
                                </select>
                    
                    
                    
                 <button class="btn btn-info" style="width: 123px; height:50px; margin-top:-8px;margin-left:8px;" type="submit"> Ver Reporte</button>
                    <a href="cashier_report.php?d1=0&d2=0&cashier="><button class="btn btn-danger" style="width: 145px; height:50px; margin-top:-8px;margin-left:8px;"> Limpiar Reporte</button></a>
                </strong></center>
                </form>
                        
                <div class="content" id="content">
<div style="font-weight:bold; text-align:center;font-size:14px;margin-bottom: 15px;">
Reporte Ventas de&nbsp;<?php echo $_GET['d1'?>&nbsp;a&nbsp;<?php echo $_GET['d2'?>&nbsp;del Cajero: &nbsp;<?php echo $_GET['cashier'?>
</div>
                    
<div class="table-responsive">                    
<table class="table table-bordered table-hover table-striped table-responsive" data-plugin="DataTable" id="resultTable" style="text-align: left;" cellspacing="0" width="100%">
    <thead>
        <tr>
            <th width="10%"> ID Trans. </th>
            <th width="10%"> Fecha Trans. </th>
            <th width="10%"> Nombre Cliente </th>
            <th width="10%"> Num de Boleta </th>
            <th width="10%"> Cantidad </th>
            <th width="10%"> Ganancia </th>
        </tr>
    </thead>
    <tbody>
        
            <?php
                
include('config/connect.php');
                
$d1=$_GET['d1'];
                
$d2=$_GET['d2'];
                
$cashier=$_GET['cashier'];
                
$result $db->prepare("SELECT * FROM sales WHERE date BETWEEN :a AND :b AND :c ORDER by transaction_id DESC ");
                
$result->bindParam(':a'$d1);
                
$result->bindParam(':b'$d2);
                
$result->bindParam(':c'$cashier);
                
$result->execute();
                for(
$i=0$row $result->fetch(); $i++){
            
?>
            <tr class="record">
            <td>STI-00<?php echo $row['transaction_id']; ?></td>
            <td><?php echo $row['date']; ?></td>
            <td><?php echo $row['name']; ?></td>
            <td><?php echo $row['invoice_number']; ?></td>
            <td style="text-align:right"><?php echo $row['amount']; ?></td>
            <td style="text-align:right">
            <?php echo $row['profit']; ?></td>
            </tr>
            <?php
                
}
            
?>
        
    </tbody>
    <thead>
        <tr>
            <th colspan="4" style="border-top:1px solid #999999" ><p align="left"> Total: </th>
            <th colspan="1" style="border-top:1px solid #999999"> <p align="right">$ 
            <?php
                
function formatMoney($number$fractional=false) {
                    if (
$fractional) {
                        
$number sprintf('%.2f'$number);
                    }
                    while (
true) {
                        
$replaced preg_replace('/(-?\d+)(\d\d\d)/''$1,$2'$number);
                        if (
$replaced != $number) {
                            
$number $replaced;
                        } else {
                            break;
                        }
                    }
                    return 
$number;
                }
                
$d1=$_GET['d1'];
                
$d2=$_GET['d2'];
                
$results $db->prepare("SELECT sum(amount) FROM sales WHERE date BETWEEN :a AND :b");
                
$results->bindParam(':a'$d1);
                
$results->bindParam(':b'$d2);
                
$results->execute();
                for(
$i=0$rows $results->fetch(); $i++){
                
$dsdsd=$rows['sum(amount)'];
                echo 
formatMoney($dsdsdtrue);
                }
                
?>
            </th>
                <th colspan="1" style="border-top:1px solid #999999"> <p align="right">$ 
            <?php 
                $resultia 
$db->prepare("SELECT sum(profit) FROM sales WHERE date BETWEEN :c AND :d");
                
$resultia->bindParam(':c'$d1);
                
$resultia->bindParam(':d'$d2);
                
$resultia->execute();
                for(
$i=0$cxz $resultia->fetch(); $i++){
                
$zxc=$cxz['sum(profit)'];
                echo 
formatMoney($zxctrue);
                }
                
?>
                </th>
             
        </tr>
    </thead>
</table>
</div>
</div>
__________________
Desarrollo de Aplicaciones de Escritorio, Sitios Web, Audio y Video en SISGUS
  #6 (permalink)  
Antiguo 06/04/2018, 18:58
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.372
Antigüedad: 3 años, 2 meses
Puntos: 253
Respuesta: Consulta por Fechas y Vendedor

oye, pero no colocaste todo como era, pues en esta query esta mal, no indicas con que campo asociar a :c

Código PHP:
Ver original
  1. $result = $db->prepare("SELECT * FROM sales WHERE date BETWEEN :a AND :b AND :c ORDER by transaction_id DESC ");

debería de ser asi no?:

Código PHP:
Ver original
  1. $result = $db->prepare("SELECT * FROM sales WHERE date BETWEEN :a AND :b AND cashier = :c ORDER by transaction_id DESC ");

no sé, digo yo!!
__________________
[email protected]
HITCEL
  #7 (permalink)  
Antiguo 06/04/2018, 19:11
 
Fecha de Ingreso: octubre-2008
Ubicación: Colombia
Mensajes: 338
Antigüedad: 9 años, 11 meses
Puntos: 1
Busqueda Respuesta: Consulta por Fechas y Vendedor

Excelente amigo, asi me funcionó correctamente, pero no me esta sumando el valor de la consulta, es decir, Me esta dando el valor de las ventas totales, quiero que me muestre solo el valor total, la suma de las ventas de cada cajero.
__________________
Desarrollo de Aplicaciones de Escritorio, Sitios Web, Audio y Video en SISGUS

Última edición por karenlorenadg; 06/04/2018 a las 19:12 Razón: Agregue texto
  #8 (permalink)  
Antiguo 06/04/2018, 19:28
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.372
Antigüedad: 3 años, 2 meses
Puntos: 253
Respuesta: Consulta por Fechas y Vendedor

imagino que es porque las consultas que estan al final de la tabla que creo son las que suman el monto, no estas pasandole el id o codigo del vendedor
__________________
[email protected]
HITCEL
  #9 (permalink)  
Antiguo 06/04/2018, 19:36
 
Fecha de Ingreso: octubre-2008
Ubicación: Colombia
Mensajes: 338
Antigüedad: 9 años, 11 meses
Puntos: 1
Busqueda Respuesta: Consulta por Fechas y Vendedor

¿Qué debo hacer En este caso, amigo estoy un poco novato en esto
__________________
Desarrollo de Aplicaciones de Escritorio, Sitios Web, Audio y Video en SISGUS
  #10 (permalink)  
Antiguo 06/04/2018, 19:40
 
Fecha de Ingreso: octubre-2008
Ubicación: Colombia
Mensajes: 338
Antigüedad: 9 años, 11 meses
Puntos: 1
Respuesta: Consulta por Fechas y Vendedor

Ok hice lo que dijiste, si ya lo pude hacer, Te agradezco mucho, fuiste de excelente ayuda. Dios te bendiga
__________________
Desarrollo de Aplicaciones de Escritorio, Sitios Web, Audio y Video en SISGUS



La zona horaria es GMT -6. Ahora son las 19:46.