File nav.php, the one that I use to include it according to the ticket_type of the user after logging in.
<?php
$active = array();
for($i=0; $i<7; $i++){
if($_GET['active']==$i){
$active[$i] = 'active';
}
else{
$active[$i] = "";
}
}
?>
<ul id="sesion" class="dropdown-content">
<li><a onclick="return confirm('Estas seguro?');" href='scripts/scriptCierraSesion.php'><i class="fa fa-sign-out" aria-hidden="true"></i> Cerrar Sesion</a></li>
</ul>
<ul id="tickets" class="dropdown-content">
<li><a href='nuevoTicket-0'><i class="fa fa-plus-square" aria-hidden="true"></i> Nueva Solicitud</a></li>
<li><a href='tickets-sin-revisar-0'><i class="fa fa-pause" aria-hidden="true"></i> Solicitudes Pendientes <?php echo '<div class="notificacion">'.$resultado =$ticket->pendientesporrevisar($conexion).'</div>'; ?></a></li>
<li><a href='tickets-revisados-0'><i class="fa fa-check-square" aria-hidden="true"></i> Solicitudes Cerradas</a></li>
</ul>
<nav style="margin-top:-10px">
<div class="nav-wrapper blue darken-1">
<a href="#" data-activates="mobile-demo" class="button-collapse"><i class="fa fa-bars" aria-hidden="true"></i></a>
<ul class="right hide-on-med-and-down">
<li class="<?=$active[8]?>"><a href="./index.php"><i class="fa fa-home" ></i> Inicio</a></li>
<li class="<?=$active[5]?>"><a href="../../index.php"><i class="fa fa-desktop" ></i> Sistemas</a></li>
<li class="<?=$active[0]?>" style="width:200px;text-align:center;"><a class="dropdown-button" href="#!" data-activates="tickets">Tickets <i class="fa fa-ticket" aria-hidden="true"></i></a></li>
<li class="<?=$active[3]?>"><a href='usuarios-3'><i class="fa fa-user" aria-hidden="true"></i> Mi perfil</a></li>
<li class="<?=$active[6]?>"><a href='sugerencias-6'><i class="fa fa-lightbulb-o" aria-hidden="true"></i> Sugerencias</a></li>
<li><a class="dropdown-button" href="#!" data-activates="sesion"><?=$_SESSION['ticket_usuario']?><i class="fa fa-chevron-down right" aria-hidden="true"></i></a></li>
</ul>
<ul class="side-nav" id="mobile-demo">
<li><a href="#">Sistemas</a></li>
<li><a href="#">Inicio</a></li>
<li><a href='nuevoTicket-0'>Nueva Solicitud</a></li>
<li><a href='tickets-sin-revisar-1'>Solicitudes Pendientes</a></li>
<li><a href='tickets-revisados-2'>Solicitudes Cerradas</a></li>
<li><a href='usuarios-3'>Mi perfil</a></li>
<li><a href='sugerencias-6'>Sugerencias</a></li>
<li><a href='sugerencias-6'>Usuario: <?=$_SESSION['ticket_usuario']?></a></li>
<li><a onclick="return confirm('Estas seguro?');" href='scripts/scriptCierraSesion.php'>Cerrar Sesion</a></li>
</ul>
</div>
</nav>
The ticket.class.php file that I call with include in my index to call the necessary functions
<?php
class Ticket{
private $idUsuario;
private $tipoSolicitud;
private $prioridad;
private $titulo;
private $observacion;
private $archivo;
private $status;
public $fecha;
private $respuesta;
public $hora;
function setIdUsuario($idUsuario){
$this->idUsuario = $idUsuario;
}
function setTipoSolicitud($TipoSolicitud){
$this->tipoSolicitud = $TipoSolicitud;
}
function setPrioridad($Prioridad){
$this->prioridad = $Prioridad;
}
function setTitulo($Titulo){
$this->titulo = $Titulo;
}
function setObservacion($Observacion){
$this->observacion = $Observacion;
}
function setArchivo($Archivo, $conexion){
$this->archivo = $Archivo;
$consulta = mysqli_query($conexion,"UPDATE ticket SET archivo='".$this->archivo."' WHERE id=".mysqli_insert_id($conexion)." ");
}
function setStatus($Status){
$this->status = $Status;
}
function setFecha(){
date_default_timezone_set('America/Manaus');
$hora = new DateTime();
$hora->setTimezone(new DateTimeZone('America/Manaus'));
$this->fecha = date("Y-m-d");
$this->hora = $hora->format("H:i:s");
}
function setRespuesta($respuesta){
$this->respuesta = $respuesta;
}
function getId($conexion){
return mysqli_insert_id($conexion);
}
function pendientesporrevisar($conexion){
$pendientes = (mysqli_query($conexion, "SELECT COUNT(*) AS conteo FROM ticket WHERE tipo_solicitud = 1 && status = 1 ")) or die("Error mostrando tickets pendientes: ".mysqli_error($conexion));
$resultados = mysqli_fetch_row($pendientes);
return $resultados[0];
}
function pendientesporrevisardos($conexion){
$pendientes = (mysqli_query($conexion, "SELECT COUNT(*) AS conteo FROM ticket WHERE tipo_solicitud = 2 && status = 1 ")) or die("Error mostrando tickets pendientes: ".mysqli_error($conexion));
$resultados = mysqli_fetch_row($pendientes);
return $resultados[0];
}
}
?>
And finally the file that shows the slopes
<?php
require ("scripts/scriptValidaSession.php");
require ("clases/ticket.class.php");
require ("clases/baseDatos.class.php");
require ("clases/usuario.class.php");
?>
<style>
.notificacion {
background: red;
border-radius: 0.8em;
-moz-border-radius: 0.8em;
-webkit-border-radius: 0.8em;
color: #ffffff;
display: inline-block;
font-weight: bold;
line-height: 1.6em;
margin-right: 15px;
text-align: center;
width: 1.6em;
}
</style>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>HelpDesk - Solicitudes pendientes</title>
<link rel="shortcut icon" href="images/favicon.png" />
<link href="materialize/css/materialize.min.css" rel="stylesheet" media="screen">
<link href="font-awesome/css/font-awesome.min.css" rel="stylesheet" media="screen">
<link href="materialize/css/style.css" rel="stylesheet" media="screen">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"><!-- ICONOS DE GOOGLE-->
<script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="js/autoRefresh.js"></script>
<script type="text/javascript" src="materialize/js/materialize.min.js"></script>
<script type="text/javascript" src="materialize/js/init.js"></script>
<script type="text/javascript">
<?php
if($_SESSION['ticket_tipo'] == 1){
echo "var myVar = setInterval(function(){autoRefresh()}, 3000);";
}
?>
window.addEventListener('focus', function() {
document.title = 'HelpDesk - Solicitudes pendientes';
$("#list").load(location.href+" #list>*","");
});
</script>
</head>
<body>
<img src="images/banner-top.png" alt="" width="100%" height="100px">
<?php
//aqui se van a redireccionar los distintos menus del sistema
//1 administrador ,2jefe de departamento, 3empleado, 4gerente ,5gerente general
if($_SESSION['ticket_tipo'] ==1 ) include_once("partes/nav.php"); //administrador
if($_SESSION['ticket_tipo'] ==2 ) include_once("partes/nav2.php"); //jefe de departamento
if($_SESSION['ticket_tipo'] ==3 ) include_once("partes/nav2.php");//empleado
if($_SESSION['ticket_tipo'] ==4 ) include_once("partes/nav2.php"); //gerente
if($_SESSION['ticket_tipo'] ==5 ) include_once("partes/nav2.php");//gerente general
?>
<div class="card-panel grey lighten-4" style="padding: 0px 20px 20px 20px !important;">
<table class="highlight responsive-table centered" id="table">
<thead>
<tr>
<th>Ticket</th>
<th>Usuario</th>
<th>Departamento</th>
<th>Sede</th>
<th>Solicitud</th>
<th>Prioridad</th>
<th>Titulo</th>
<th>Adjunto</th>
<th>Estatus</th>
<th>Fecha</th>
<th>Hora</th>
<?php if($_SESSION['ticket_tipo'] == 1 || ($_SESSION['ticket_tipo'] > 3 && $_SESSION['ticket_tipo'] < 6)): ?>
<td><a href="reporte.php" target="_blank"><i title="Descargar PDF" class=" glyphicon glyphicon-floppy-save"></i></a></td>
<?php endif; ?>
</tr>
</thead>
<tbody>
</tbody>
</table>
<?php
$conexion = new baseDatos();
if ($conexion->connect_errno) {
echo "Fallo la conexion: ".$conexion->connect_error;
}
$ticket = new Ticket();
if($_SESSION['ticket_tipo'] == 3){
$consulta = $ticket->listTicketUnrevisedEmpleado($conexion, $_SESSION['ticket_id']);
}elseif($_SESSION['ticket_tipo'] == 2){
$consulta = $ticket->listTicketUnrevisedSupervisor($conexion, $_SESSION['ticket_id_departamento']);
}elseif($_SESSION['ticket_tipo'] == 4){
$consulta = $ticket->listTicketUnrevisedGerente($conexion, $_SESSION['ticket_id_cede']);
}elseif($_SESSION['ticket_tipo'] == 1){
$consulta = $ticket->listTicketUnrevised($conexion);
$resultado = $ticket->pendientesporrevisar($conexion);
if($resultado > 0){ // validamos si es mayor a 0
?>
<div align="" class="">TICKETS DE ANULACION PENDIENTES:<?php echo '<div class="notificacion">',$resultado,'</div>'; ?></div>
<?php
}
$resultado = $ticket->pendientesporrevisardos($conexion);
if($resultado > 0){ // validamos si es mayor a 0
?>
<div align="" class="">TICKETS DE SOPORTE PENDIENTES:<?php echo '<div class="notificacion">',$resultado,'</div>'; ?></div>
<?php
}
}
?>
.....
</div>
</body>
</html>
Why in my nav.php file does it not load the same as it loads in the index file?
It tells me that the variable ticket is not defined, however I call it in my index and if it appears. What should I add in the nav file to be able to display the $resultado = $ticket->pendientesporrevisar($conexion);
information in that file?