Location: PHPKode > projects > PHD Help Desk > phd_2_00/consulta_result.php
<?PHP
/*
    Nombre: consulta_result.php
    Autor: Julio Tuozzo
    Función: Pantalla de resultados de consulta de tickets
    Function: Result screen of tickets consult
    Ver: 2.00
*/

session_start();
require('lang.inc');
if (!isset($_SESSION['PHD_NIVEL']) or $_SESSION['PHD_NIVEL']<10)
    {include('login.inc');
     exit();
    }


## Traigo las funciones PHP
// Get PHP functions

require('funcionesPHP.inc');

## Me conecto con la base de datos
// Connect with the database

    require('phd.inc');
    $Conect=mysql_connect($Host,$Usuario,$Contrasena) or die (mysql_error());
    $Uso=mysql_select_db($Base) or die (mysql_error());


## Verifico si esta seteado el botón de submit "buscar", si es así
## armo la condición de búsqueda y la guardo en una variable global,
## calculo el número de páginas para paginar el resultado.
## De lo contrario rescato la condición desde la variable global y veo
## en qué página tengo que buscar.

// Verify if ius set button of submit “buscar”, if he is thus make the condition
// search and keep it in a global variable, calculate the number of pages to paging
// the result. Otherwise retrieve the condition from the global variable and get in
// what page must look for.

if (isset($_POST['buscar']))

    {## inicializo las variables
     // inicializig variables
    unset($_SESSION['PHD_MAIN_CONS']);
    $mensaje="";
    $ticket=strip_tags(trim($_POST[ticket]));
    $operador=strip_tags(trim($_POST[operador]));
    $operador_sector_id=strip_tags(trim($_POST[operador_sector_id]));
    $contacto=strip_tags(trim($_POST[contacto]));
    $usuario=strip_tags(trim($_POST[usuario]));
    $area_id=strip_tags(trim($_POST[area_id]));
    $fecha_desde=trim($_POST[fecha_desde]);
    $fecha_hasta=trim($_POST[fecha_hasta]);
    $fecha_ue_desde=trim($_POST[fecha_ue_desde]);
    $fecha_ue_hasta=trim($_POST[fecha_ue_hasta]);
    $proceso=trim($_POST[proceso]);
    $estado=trim($_POST[estado]);
    $tipo=trim($_POST[tipo]);
    $sub_tipo=trim($_POST[sub_tipo]);
    $prioridad=trim($_POST[prioridad]);
    $asignado_a=strip_tags(trim($_POST[asignado_a]));
    $asignado_a_sector=strip_tags(trim($_POST[asignado_a_sector]));
    $_SESSION[PHD_INCIDENTE]=$incidente=strip_tags(trim($_POST[incidente]));
    $_SESSION[PHD_COMENTARIO_Q]=$comentario=strip_tags(trim($_POST[comentario]));

    ## Armo el título con las condiciones de filtro de la consulta
    // Compose the title with the query conditions
    
    $titulo=$Query_head;

    ## Armo el query con las condiciones que se pusieron en pantalla.
    // Make the query with the conditions


    if (strlen($ticket)>0)
        {$condicion.="seq_ticket_id='$ticket' AND ";
         $titulo.=" <b>$Ticket:</b> # $ticket,";
        }

    if (strlen($fecha_desde)>0)
        { if (!fecha_valida($fecha_desde))
            {$mensaje.="$fecha_desde, $No_valid_format_date_from <br />";
            }
          $titulo.=" <b>$From $Date:</b> $fecha_desde,";
          $fecha_desde=fecha_mysql($fecha_desde);
          $condicion.="fecha>'$fecha_desde' AND ";
        }

    if (strlen($fecha_hasta)>0)
       {if (!fecha_valida($fecha_hasta))
            {$mensaje.="$fecha_hasta, $No_valid_format_date_to <br />";
            }
          $titulo.=" <b>$To $Date:</b> $fecha_hasta,";

        ## Le sumo un día a la fecha hasta para que incluya los tickets ingresados en esa fecha.
        //
          $fecha_hasta=date('Y-m-d',strtotime(fecha_mysql($fecha_hasta))+(24*60*60));
          $condicion.="fecha<'$fecha_hasta' AND ";
        }

    if (strlen($operador)>0)
        {$condicion.="operador_id='$operador' AND ";
         $titulo.=" <b>$Operator:</b> $operador,";
        }

    if (strlen($operador_sector_id)>0)
        {$condicion.="operador_sector_id='$operador_sector_id' AND ";
         $titulo.=" <b>$Sector $Operator:</b> $operador_sector_id,";
        }

    if (strlen($contacto)>0)
        {$condicion.="contacto='$contacto' AND ";
         $titulo.=" <b>$Contact:</b> $contacto,";
        }

    if (strlen($usuario)>0)
        {$condicion.="usuario_id='$usuario' AND ";
         $titulo.=" <b>$User:</b> $usuario,";
        }

    if (strlen($area_id)>0)
        {$condicion.="area_id='$area_id' AND ";
         $titulo.=" <b>$Area:</b> $area_id,";
        }

    if (strlen($asignado_a)>0)
        {$condicion.="asignado_a='$asignado_a' AND ";
         $titulo.=" <b>$Assigned_to:</b> $asignado_a,";
        }

    if (strlen($asignado_a_sector)>0)
        {$condicion.="asignado_a_sector='$asignado_a_sector' AND ";
         $titulo.=" <b>$Assigned_to $Sector:</b> $asignado_a_sector,";
        }

    if (strlen($prioridad)>0)
        {$condicion.="prioridad='$prioridad' AND ";
         $titulo.=" <b>$Priority:</b> $prioridad,";
        }

    if (strlen($incidente)>0)
        {$condicion.="MATCH (incidente) AGAINST('$incidente') AND ";
        }

    if (strlen($proceso)>0)
        {$condicion.="proceso='$proceso' AND ";
         $titulo.=" <b>$Process:</b> $proceso,";
        }

    if (strlen($tipo)>0)
        {$condicion.="tipo='$tipo' AND ";
         $titulo.=" <b>$Type:</b> $tipo,";
        }

    if (strlen($sub_tipo)>0)
        {$condicion.="sub_tipo='$sub_tipo' AND ";
         $titulo.=" <b>$Subtype:</b> $sub_tipo,";
        }


    if (strlen($estado)>0)
        {$condicion.="estado='$estado' AND ";
         $titulo.=" <b>$State:</b> $estado,";
        }


    if (strlen($fecha_ue_desde)>0)
        { if (!fecha_valida($fecha_ue_desde))
            {$mensaje.="$fecha_ue_desde, $No_valid_format_lsd_from <br />";
            }
          $titulo.=" <b>$Last_state_date $From:</b> $fecha_ue_desde,";
          $fecha_ue_desde=fecha_mysql($fecha_ue_desde);
          $condicion.="fecha_ultimo_estado>'$fecha_ue_desde' AND ";
        }

    if (strlen($fecha_ue_hasta)>0)
       {if (!fecha_valida($fecha_ue_hasta))
            {$mensaje.="$fecha_ue_hasta, $No_valid_format_lsd_to <br />";
            }
          $titulo.=" <b>$Last_state_date $To:</b> $fecha_ue_hasta,";

        ## Le sumo un día a la fecha último estado hasta para que incluya los tickets de esa fecha .
          $fecha_ue_hasta=date('Y-m-d',strtotime(fecha_mysql($fecha_ue_hasta))+(24*60*60));
          $condicion.="fecha_ultimo_estado<'$fecha_ue_hasta' AND ";
        }

   if (strlen($comentario)>0)
        {$condicion.="seq_ticket_id IN (select seq_ticket_id FROM {$MyPHD}sigo_ticket WHERE MATCH (comentario) AGAINST('$comentario')) AND ";
        }

## Verifico que no haya errores
// Verify that aren't errors

    if (strlen($mensaje)>1)
        {require('head.inc');
         echo "<body class='fondo'><br />
         <div class='error' style='text-align: center;'>
         <big>$mensaje</big>
         </div>
         <br /> ";
         require('boton_cerrar.inc');
         echo "<body>
         <html>";

         exit();
        }


    ## Armo el WHERE de la consulta
    // make the WHERE of the query

    $condicion=" WHERE $Filtro_ticket AND ".$condicion;
    $titulo=strlen($titulo)>strlen($Query_head) ? substr($titulo,0,strlen($titulo)-1)."." : "";
    ## Saco el último AND de la cadena $condicion y armo la consulta
    $_SESSION['PHD_CONDICION']=$condicion=substr($condicion,0,(strlen($condicion)-5));
    $_SESSION['PHD_TITULO']=$titulo;
    

    ## cuento cuántos registros arroja la consulta
    // Count the rows of the query
    
    $query="SELECT COUNT(*) AS cuantos
            FROM {$MyPHD}ticket $condicion";
    $result=mysql_query($query) or die (mysql_error());
    $row = mysql_fetch_array($result);
    $q_registros=$row['cuantos'];
    $pagina=1;
    $orden="seq_ticket_id";
    $sentido="ASC";
    }
else
    {$condicion=$_SESSION['PHD_CONDICION'];
     $q_registros=$_GET[q_registros];
     $pagina=$_GET[pagina];
     $orden=$_GET[orden];
     $sentido=$_GET['sentido'];
     $titulo=$_SESSION['PHD_TITULO']; 
    }
if ($q_registros==0)
    {$query="SELECT COUNT(*) AS cuantos
             FROM {$MyPHD}ticket $condicion";
     $result=mysql_query($query) or die (mysql_error());
     $row = mysql_fetch_array($result);
     $q_registros=$row['cuantos'];
    }

if (isset($_POST[buscar])  or isset($_GET[pagina]))
    {include('c_screen.inc');
    }
elseif (isset($_POST['exportar']))
    {include('c_export.inc');
    }
else
    {include('head.inc');
     echo"  <body>
     </body> </html>";
    }
?>

Return current item: PHD Help Desk