Edición de «Clase Online»

De KumbiaPHP Framework Wiki

Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 1: Línea 1:
 
== Descripción ==
 
== Descripción ==
La clase online lo que hace es crear un registro del tiempo de conexión para usuario logeado, para esto vamos asumir que ya tenemos nuestra tabla usuarios más una tabla de perfiles "roles", Tambien la forma de obtener los id de usuarios conectados, habra que crear una variable de session con la class Session y poder almacenar los valores en la tabla logs.
+
La clase online lo que hace es crear un registro del tiempo de conección para usuario logeado, para esto vamos asumir que ya tenemos nuestra tabla usuarios más una tabla de perfiles "roles", Tambien la forma de obtener los id de usuarios conectados, habra que crear una variable de session con la class Session y poder almacenar los valores en la tabla logs.
  
 
=== Tablas ===
 
=== Tablas ===
Línea 34: Línea 34:
 
         $rec->ip                =      $_SERVER['REMOTE_ADDR'];
 
         $rec->ip                =      $_SERVER['REMOTE_ADDR'];
 
         $rec->save();
 
         $rec->save();
         if($rec->id!=0)
+
         if(ActiveRecord::static_select_one("LAST_INSERT_ID()")!=0)
             Session::set('logs_id', $rec->id);
+
             Session::set('logs_id', ActiveRecord::static_select_one("LAST_INSERT_ID()"));
 
     }
 
     }
 
}
 
}
Línea 64: Línea 64:
 
=== Mostrar los datos ===
 
=== Mostrar los datos ===
  
En esta parte cada programador puede mostrar los datos como quiera. solo deben hacer una consulta y recorrer el modelo con un foreach para poder crear una tabla. Yo lo haré con el  [[JQuery_UI_en_Kumbiaphp_Spirit_beta2_calendar]]
+
En esta parte cada programador puede mostrar los datos como quiera. solo deben hacer una consulta y recorrer el modelo con un foreach para poder crear una tabla. Yo lo haré con el  [[Helper_Datagrid]] y [[JQuery_UI_en_Kumbiaphp_Spirit_beta2_calendar]]
  
'''controlador
+
*Primero crear un controller
 
utils_controller.php
 
utils_controller.php
 
*Kumbiaphp 1.0 Beta1
 
 
<source lang=php>
 
    public function logs(){
 
        Flash::notice('Logs del sistema. Fecha hora: ' . date("d-m-Y H:m:s"));
 
        $this->fecha    =  date('d-m-Y');
 
        $this->items    =  array();
 
        if($this->has_post('fecha')){
 
            $this->fecha    =  $this->post('fecha');
 
            $this->items    =  Load::model('logs')->getLogs($this->fecha);
 
        }
 
    }
 
</source>
 
 
*Kumbiaphp 1.0 Beta2
 
 
 
<source lang=php>
 
<source lang=php>
 
     public function logs(){
 
     public function logs(){
 
         Flash::info('Logs del sistema. Fecha hora: ' . date("d-m-Y H:m:s"));
 
         Flash::info('Logs del sistema. Fecha hora: ' . date("d-m-Y H:m:s"));
 +
        //Dialog::error('Hola Mundo');
 
         $this->fecha    =  date('d-m-Y');
 
         $this->fecha    =  date('d-m-Y');
 
         $this->items    =  array();
 
         $this->items    =  array();
 
         if(Input::hasPost('fecha')){
 
         if(Input::hasPost('fecha')){
 +
            $fecha          =  Input::post('fecha');
 +
            $this->items    =  Load::model('logs')->getLogs($fecha);
 +
            //$this->items    =  Load::model('vlogs')->find("fecha_in = '" . "$fecha" . "'");
 
             $this->fecha    =  Input::post('fecha');
 
             $this->fecha    =  Input::post('fecha');
            $this->items    =  Load::model('logs')->getLogs($this->fecha);
 
 
         }
 
         }
 
     }
 
     }
 
</source>
 
</source>
 
 
'''Vista
 
 
*Kumbiaphp 1.0 Beta1
 
 
<source lang=php>
 
<?php View::content(); ?>
 
<?php echo form_tag($controller_name . '/' . $action_name); ?>
 
<div align="center">
 
  <?php echo date_field_tag('fecha','size: 10'); ?>
 
  <?php echo submit_tag('Ir')?>
 
</div>
 
<?php echo end_form_tag() ?>
 
<table class='table_grilla'>
 
  <tr>
 
  <th>NONBRES</th>
 
  <th>APELLIDOS</th>
 
  <th>PERFIL</th>
 
  <th>IP</th>
 
  <th>FECHA INI</th>
 
  <th>HORA INI</th>
 
  <th>FECHA FIN</th>
 
  <th>HORA FIN</th>
 
  <th>DURACION</th>
 
</tr>
 
<?php foreach($items as $item): ?>
 
      <tr>
 
        <td><?php echo $item->nombres ?></td>
 
        <td><?php echo $item->apellidos ?></td>
 
        <td><?php echo $item->perfil ?></td>
 
        <td><?php echo $item->ip ?></td>
 
        <td><?php echo $item->fecha_ini ?></td>
 
        <td><?php echo $item->hora_ini ?></td>
 
        <td><?php echo $item->fecha_fin ?></td>
 
        <td><?php echo $item->hora_fin ?></td>
 
        <td><?php echo $item->duracion ?></td>
 
      </tr>
 
  <?php endforeach; ?>
 
</table>
 
</source>
 
 
 
*Kumbiaphp 1.0 Beta2
 
 
<source lang=php>
 
<?php View::content(); ?>
 
<?php echo Form::open() ?>
 
<div align="center">
 
  <?php echo Calendar::text('fecha','size=10'); ?>
 
  <?php echo Form::submit('Ir', array('class' => 'boton'))?>
 
</div>
 
<?php echo Form::close() ?>
 
<table class='table_grilla'>
 
  <tr>
 
  <th>NONBRES</th>
 
  <th>APELLIDOS</th>
 
  <th>PERFIL</th>
 
  <th>IP</th>
 
  <th>FECHA INI</th>
 
  <th>HORA INI</th>
 
  <th>FECHA FIN</th>
 
  <th>HORA FIN</th>
 
  <th>DURACION</th>
 
</tr>
 
<?php foreach($items as $item): ?>
 
      <tr>
 
        <td><?php echo $item->nombres ?></td>
 
        <td><?php echo $item->apellidos ?></td>
 
        <td><?php echo $item->perfil ?></td>
 
        <td><?php echo $item->ip ?></td>
 
        <td><?php echo $item->fecha_ini ?></td>
 
        <td><?php echo $item->hora_ini ?></td>
 
        <td><?php echo $item->fecha_fin ?></td>
 
        <td><?php echo $item->hora_fin ?></td>
 
        <td><?php echo $item->duracion ?></td>
 
      </tr>
 
  <?php endforeach; ?>
 
</table>
 
</source>
 
 
'''Modelo
 
 
<source lang=php>
 
class Logs extends ActiveRecord{
 
    public function getLogs($fecha){
 
        Load::lib('date');
 
        $fecha = fentrada($fecha);
 
        $sql = "SELECT usuarios.id AS id,
 
                usuarios.nombres AS nombres,
 
                usuarios.apellidos AS apellidos,
 
                perfiles.nombre AS perfil,
 
                logs.ip AS ip,
 
                DATE_FORMAT(logs.fecha_at, '%d-%m-%Y') AS fecha_ini,
 
                DATE_FORMAT(logs.fecha_at, '%H:%i:%s') as hora_ini,
 
                DATE_FORMAT(logs.fecha_in, '%d-%m-%Y') AS fecha_fin,
 
                DATE_FORMAT(logs.fecha_in, '%H:%i:%s') as hora_fin,
 
                SUBTIME(DATE_FORMAT(logs.fecha_in, '%H:%i:%s'),
 
                DATE_FORMAT(logs.fecha_at, '%H:%i:%s')) as duracion from logs
 
                inner join usuarios on usuarios.id = logs.usuarios_id
 
                inner join perfiles on perfiles.id = usuarios.perfiles_id
 
                where
 
                logs.fecha_in > '$fecha 00:00' and logs.fecha_in < '$fecha 23:59'
 
                ";
 
        return $this->find_all_by_sql($sql);
 
    }
 
}
 
</source>
 
 
[[Categoría:Tutoriales KumbiaPHP]]
 

Ten en cuenta que todas las contribuciones a KumbiaPHP Framework Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Proyecto:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)