Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] personas por dia de la semana

Estas en el tema de personas por dia de la semana en el foro de PHP en Foros del Web. estimados amigos tengo un problema resulta que quiero hacer una consulta la cual debe cambiar todos los dias de la semana ejemplo si el usuario ...
  #1 (permalink)  
Antiguo 07/03/2018, 12:51
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 12 años, 2 meses
Puntos: 0
personas por dia de la semana

estimados amigos tengo un problema resulta que quiero hacer una consulta la cual debe cambiar todos los dias de la semana ejemplo si el usuario pone del 01/03/2017 al 05/03/2017 el sistema tiene que poner 01/03/2017 02/03/2017 03/03/2017 04/03/2017 05/03/2017 (lo cual actualmente lo esta haciendo el problema es que necesito poner personas en esos fechas todos los dias distintas tengo esta consulta lo cual me trae los nombres pero no logro que me los cambie para los dias de la semana

codigo que me muestra los dias de la semana
Código PHP:
for($i=$fecha11;$i<=$fecha22;$i date("d-m-Y"strtotime($i ."+ 1 days")))
        {
    echo 
"<td>";
    echo 
$i;
    echo 
"</td>"

codigo que deberia distribuir las personas por los dias de la semana

$psalida= mysql_query ("SELECT * FROM funcionarios WHERE PLANTA='ADMINISTRATIVOS' OR PLANTA='TECNICOS' AND marca='0' ORDER BY RAND() LIMIT 2");
while($row11 = mysql_fetch_array($psalida)){
if ($row["zonas"]=="P. Salida Amanecida"){
echo $arreglo7[] = $row11["nombre"]; echo"</br>";
}
  #2 (permalink)  
Antiguo 07/03/2018, 14:03
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: personas por dia de la semana

no estoy seguro de como armas el array de personas, pero podria ser algo asi:

Código PHP:
Ver original
  1. $fecha11 = "2018-03-01";
  2. $fecha22 = "2018-03-05";
  3.  
  4. $nombres = array("Carlos","Manuel","Maria","jose");
  5.  
  6. $con = 0;
  7. for($i=$fecha11; $i<=$fecha22; $i = date("Y-m-d", strtotime($i ."+ 1 days")))
  8. {
  9.     echo "<li>Fecha: ".$i."   De Guardia: ".$nombres[$con]."</li>";
  10.  
  11.     $con++;
  12.     if($con==count($nombres)){
  13.         $con=0;
  14.     }
  15. }

esto lo que hace es armar una lista de personas de guardia en las fechas que se generen, si hay menos nombres que dias en el bucle, este reinicia el recorrido de los nombres para repetir la guardia desde el inicio, retornaria algo más o menos asi:

Fecha: 2018-03-01 De Guardia: Carlos
Fecha: 2018-03-02 De Guardia: Manuel
Fecha: 2018-03-03 De Guardia: Maria
Fecha: 2018-03-04 De Guardia: jose
Fecha: 2018-03-05 De Guardia: Carlos
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 08/03/2018, 05:43
Avatar de luissquadrito  
Fecha de Ingreso: agosto-2012
Ubicación: en algun lugar de chile
Mensajes: 119
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: personas por dia de la semana

Amigo Muchas gracias lo hace muestra la información como tu me dices te pasaste

Pero ahora tengo otra duda, resulta que necesito poner esa información en columnas por dias en una fila(lo cual lo puedo hacer) pero el problema radica es que deben ser dos por dia y ahi se me va de como hacerlo
  #4 (permalink)  
Antiguo 08/03/2018, 05:54
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: personas por dia de la semana

Oye no se, se me ocurre hacer una modificacion de esta manera:

Código PHP:
Ver original
  1. $fecha11 = "2018-03-01";
  2. $fecha22 = "2018-03-05";
  3.  
  4. $nombres = array("Carlos","Manuel","Maria","jose",'Ivan','Ramon');
  5.  
  6. $con = 0;
  7. for($i=$fecha11; $i<=$fecha22; $i = date("Y-m-d", strtotime($i ."+ 1 days")))
  8. {
  9.     echo "<li>Fecha: ".$i."   De Guardia: ".$nombres[$con]." y ".$nombres[$con+1]."</li>";
  10.  
  11.     $con++;
  12.     $con = $con+1;
  13.     if($con==count($nombres)){
  14.         $con=0;
  15.     }
  16. }

imprimiría esto:
Fecha: 2018-03-01 De Guardia: Carlos y Manuel
Fecha: 2018-03-02 De Guardia: Maria y jose
Fecha: 2018-03-03 De Guardia: Ivan y Ramon
Fecha: 2018-03-04 De Guardia: Carlos y Manuel
Fecha: 2018-03-05 De Guardia: Maria y jose

pero tendrías que hacer pruebas en caso de que la cantidad de nombres sea impar.
__________________
[email protected]
HITCEL

Etiquetas: dia, mysql, nombre, personas, query, select, semana
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 07:25.