Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Hacer un conteo de horas para horarios

Estas en el tema de Hacer un conteo de horas para horarios en el foro de PHP en Foros del Web. hola como estan llevo tiempo tratando de hacer un conteo de horas asignadas en el horario de clases a un docente y no e logrado, ...
  #1 (permalink)  
Antiguo 21/03/2013, 20:15
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Hacer un conteo de horas para horarios

hola como estan llevo tiempo tratando de hacer un conteo de horas asignadas en el horario de clases a un docente y no e logrado, necesito hacer un conteo de las horas registradas en 4 campos distintos con los nombres dish1, dish2, dish3 y dish4, en cada uno de esos campos registro 4 horas como maximo de esta manera 01-02-03-04 para el docente de x materias, lo q quisiera es poder contar cuantas horas tiene asignada el docente en esos campos, espero me haya explicado bien, e tratado con estos codigos q e inventado y nada q me da el total de horas asignadas

Código PHP:
Ver original
  1. <?php
  2. include('cone.php');
  3. conectarse();
  4. //contar palabras normales
  5.  
  6. //Probar de esta form
  7. //Probar de esta form
  8.  
  9. $sql=mysql_query("select dish1, dish2, dish3, dish4 from horarios where cod_doc = '2'") or die (mysql_error());
  10. $total = 0;
  11. while ($array=mysql_fetch_array($sql)) {
  12. foreach(array('dish1', 'dish2', 'dish3', 'dish4') as $campo) {
  13.  
  14. $separa=explode("-",$campo);
  15. $numero=count(array_diff($separa, array('')));
  16. echo "<BR>Hay ".$numero." horas de clases";
  17. }
  18. }
  19. echo "<br>";
  20. echo "<br>";
  21. ?>
  #2 (permalink)  
Antiguo 21/03/2013, 20:36
Avatar de evolutionrgm  
Fecha de Ingreso: mayo-2011
Mensajes: 108
Antigüedad: 13 años
Puntos: 5
Respuesta: Hacer un conteo de horas para horarios

man googlie y encontre esto espero que te ayude

Código PHP:
Ver original
  1. $h1=substr($hora1,0,2);
  2.     $m1=substr($hora1,3,2);
  3.    
  4.     $h2=substr($hora2,0,2);
  5.     $m2=substr($hora2,3,2);
  6.    
  7.     $llevada=false;
  8.     $minutos=$m1+$m2;
  9.     if($minutos>=60){
  10.         $minutos=$minutos-60;
  11.         $llevada=true;
  12.     }
  13.    
  14.     $horas=$h1+$h2;
  15.     if($llevada){
  16.         $horas++;
  17.     }
  18.    
  19.     $total=$horas.":".$minutos;
  20.     $horastotal=date("h:i",$total);
  21.     return($horastotal);
  #3 (permalink)  
Antiguo 21/03/2013, 20:50
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hacer un conteo de horas para horarios

hola amigo gracias por responder, pero me podrias explicar esa funcion
  #4 (permalink)  
Antiguo 21/03/2013, 20:55
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hacer un conteo de horas para horarios

pero la verdad no me sirve esa funcion ya que yo guardo en la tabla horarios el id de las horas registradas en la tabla horas, es decir en la tabla horarios para cada dia les registro las horas al docente de esta manera 01-02-03-04
  #5 (permalink)  
Antiguo 21/03/2013, 23:58
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hacer un conteo de horas para horarios

Alguien q me pueda echar la mano con estos por favor se los agradeceria mucho en verdad
  #6 (permalink)  
Antiguo 22/03/2013, 00:41
 
Fecha de Ingreso: septiembre-2011
Mensajes: 219
Antigüedad: 12 años, 7 meses
Puntos: 31
Respuesta: Hacer un conteo de horas para horarios

No me queda claro como estas guardando los datos, podrias mostrar la estructura de la tabla y un ejemplo de los datos?
  #7 (permalink)  
Antiguo 22/03/2013, 07:59
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hacer un conteo de horas para horarios

hola mira esta es la estructura de la tabla horarios,

Código SQL:
Ver original
  1. CREATE TABLE `horarios` (
  2.   `grado` INT(11) NOT NULL,
  3.   `cod_mat` INT(3) NOT NULL,
  4.   `seccion` VARCHAR(5) COLLATE utf8_spanish_ci NOT NULL,
  5.   `cod_mencion` VARCHAR(10) COLLATE utf8_spanish_ci NOT NULL,
  6.   `cod_doc` INT(11) NOT NULL,
  7.   `dia1` INT(11) NOT NULL,
  8.   `dish1` VARCHAR(15) COLLATE utf8_spanish_ci NOT NULL,
  9.   `aula1` VARCHAR(10) COLLATE utf8_spanish_ci NOT NULL,
  10.   `dia2` INT(11) NOT NULL,
  11.   `dish2` VARCHAR(15) COLLATE utf8_spanish_ci NOT NULL,
  12.   `aula2` VARCHAR(10) COLLATE utf8_spanish_ci NOT NULL,
  13.   `dia3` INT(11) NOT NULL,
  14.   `dish3` VARCHAR(15) COLLATE utf8_spanish_ci NOT NULL,
  15.   `aula3` VARCHAR(10) COLLATE utf8_spanish_ci NOT NULL,
  16.   `dia4` INT(11) NOT NULL,
  17.   `dish4` VARCHAR(15) COLLATE utf8_spanish_ci NOT NULL,
  18.   `aula4` VARCHAR(10) COLLATE utf8_spanish_ci NOT NULL
  19. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

e aqui los registros guardados

Código SQL:
Ver original
  1. INSERT INTO `horarios` (`grado`, `cod_mat`, `seccion`, `cod_mencion`, `cod_doc`, `dia1`, `dish1`, `aula1`, `dia2`, `dish2`, `aula2`, `dia3`, `dish3`, `aula3`, `dia4`, `dish4`, `aula4`) VALUES (8,16,'A','',2,1,'01-02-03-04','',0,'---','',0,'---','',0,'---',''),(8,16,'B','',2,1,'05-06-07-08','',0,'---','',0,'---','',0,'---',''),(8,21,'A','',2,2,'01-02-03-04','2',4,'01-02-03-04','3',0,'---','',0,'---',''),(8,21,'B','',2,3,'01-02-03-04','3',5,'12-13-14-15','3',0,'---','',0,'---',''),(9,28,'C','',38,1,'01-02-03-04','5',0,'---','',0,'---','',0,'---',''),(9,25,'C','',42,2,'01-02-03-04','6',0,'---','',0,'---','',0,'---',''),(9,34,'C','',29,1,'05-06-07-08','3',3,'10-11-12-13','3',0,'---','',0,'---',''),(9,33,'C','',18,3,'01-02-03-04','4',5,'01-02-03-04','4',0,'---','',0,'---',''),(9,31,'C','',40,4,'01-02-03-04','7',0,'---','',0,'---','',0,'---','');

alli podras ver el cod_doc numero 2 que es el codigo del dcoente, que tiene asignadas varias horas en los campos dish1, dish2, dish3 y dsh4, que serian horas del dia 1, horas del dia2 horas del dia 3 y horas del dia4, lo q quisiera alli es poder contar esas horas en esos 4 campos al docente, espero me hayas explicado bien amigo espero tu ayuda gracias porresponder
  #8 (permalink)  
Antiguo 22/03/2013, 10:51
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 16 años
Puntos: 47
Respuesta: Hacer un conteo de horas para horarios

No termino de entender tu tabla pero se me hace que el problema es como tenes tu estructura de las tablas....
  #9 (permalink)  
Antiguo 22/03/2013, 13:30
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hacer un conteo de horas para horarios

Pues la verdad solo quisiera es que me pudieran echar la mano en esta consulta de como poder contar en 4 campos de una tabla todos las horas registradas para un docente registradas de esta manera 01-02-03-04
  #10 (permalink)  
Antiguo 23/03/2013, 19:51
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hacer un conteo de horas para horarios

hola la verdad muchas gracias a todos por su ayuda en este foro, ya e logrado la solucion de este gran probelma q traia desde hace meses jejeje, muchas gracias

Etiquetas: conteo, horarios, horas, mysql, registro, select, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:33.