PHP - Comparar campos de una tabla con un calendario

   
Vista:
Imágen de perfil de orlando

Comparar campos de una tabla con un calendario

Publicado por orlando (55 intervenciones) el 19/09/2014 17:49:08
Muchas gracias de antemano. Resulta que en mi tabla tengo los siguientes campos año, mes, dia y hora, ahora bien lo quiero comparar con un calendario, como puedo hacer:

Anexo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
mysql_connect("localhost","root","");
mysql_select_db("bd_turnos");
error_reporting(E_ALL ^ E_NOTICE);
?>
<?php
$str=' ';
?>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
	<script src="src/js/jscal2.js"></script>
    <script src="src/js/lang/en.js"></script>
    <link rel="stylesheet" href="src/css/jscal2.css" />
    <link rel="stylesheet" href="src/css/border-radius.css" />
    <link rel="stylesheet" href="src/css/steel/steel.css" />
<title>Cita Medica</title>
</head>
 
	<body bgcolor="#CCCCCC">
		<div align="center"><font size=5 face="Comic Sans MS,arial,verdana" align="center">Cita Medica</font></div>
		<div align="center"><font size=4 face="Comic Sans MS,arial,verdana" align="center">(Profesional Medico)</font></div>
		<p></p>
		<form method="POST" action="guarda_cita.php">
			<td width="20"><b>Medico:</b></td>
				<select name="medico">
					<option value="">Seleccionar</option>
					<?php
						$sql="SELECT * FROM medico join especialidad join calendario WHERE medico.numeroDocumentoMedico=calendario.numeroDocumentoMedico AND especialidad.idEspecialidad=medico.idEspecialidad ORDER BY desEspecialidad ASC";
						$rec=mysql_query($sql);
						while($row=mysql_fetch_array($rec))
						{
							echo "<option value='".$row['idMedico']."' ";
							if ($_POST['medico']==$row['idMedico'])
							echo " SELECTED ";
							echo ">";
							echo ($str);
							echo $row['desEspecialidad'];
							echo ($str);
							echo $row['apellido'];
							echo ($str);
							echo "<b>";
							echo $row['nombre'];
							echo "</option>";
						}
						?>
				</select>
			<p></p>
			<td width="20"><b>Horario:</b></td>
			<input size="30" id="f_date1" /><button id="f_btn1">...</button><br />
			<script type="text/javascript">
      			Calendar.setup({
        		inputField : "f_date1",
        		trigger    : "f_btn1",
        		onSelect   : function() { this.hide() },
        		showTime   : 12,
        		dateFormat : "%Y-%m-%d %I:%M %p"
      			});
    		</script>
 
 
		</form>
	</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Comparar campos de una tabla con un calendario

Publicado por xve (5525 intervenciones) el 20/09/2014 13:25:13
Hola Orlando, no me queda muy clara tu pregunta.

Quieres comparar la fecha que introduce un usuario en un formulario con las fechas que hay en una tabla de la pagina?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de orlando

Comparar campos de una tabla con un calendario

Publicado por orlando orlandorodriguez40@hotmail.com (55 intervenciones) el 20/09/2014 17:41:34
Muchas gracias Gonzalo por tu repuesta.

Te explico:

Cuando un paciente solicita un nuevo turno se abre un calendario donde primero se selecciona el profesional médico con el cual desea atenderse.

Una vez seleccionado el medico, se desplegará un calendario mensual resaltando los días en los cuales dicho profesional atiende, coloreando con rojo los días que tiene el cupo completo y verde en los cuales existen turnos disponibles.

Una vez que se selecciona el día, se desplegara una visión completa del día seleccionado dividido por turnos, en rojo los que ya han sido tomados y en verde los que están disponibles. Cuando se ingrese el turno, el mismo se pondrá de color rojo.
Luego en base a los dias y horarios disponibles y a la preferencia del paciente se selecciona dia y hora del turno en cuestion.

Una vez definido el turno se deben ingresar los datos del paciente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Comparar campos de una tabla con un calendario

Publicado por xve (5525 intervenciones) el 21/09/2014 09:26:34
Hola Orlando, pero como sabes si tiene el día completo o no? porque podría ser, que de un día, tuviera algunas horas libre, no?

Lo que yo haria, es hacer una consulta a la base de datos, y que me devuelve todos los días que tiene ocupados del mes en concreto.

En el momento de mostrar el calendario, iría revisando si ese día lo tiene completo en la respuesta a la consulta de la base de datos.

No se si me he explicado bien... coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Comparar campos de una tabla con un calendario

Publicado por Gonzalo (339 intervenciones) el 20/09/2014 14:09:54
segun como entiendo, el problema es que tienes fechas yyyy-mm-dd y necesitas compararlo contra fechas yyyy-mm-dd hh:mm:ss

si este es el caso puedes hacer 2 cosas

darle formato a la fecha directamente en el query para filtrar las horas y que muestre solo las fechas.

y por php dándole formato a las 2 fechas de manera que se puedan comparar

if(date("Ymd",$Fecha1) == date("Ymd",$Fecha2))
{
//son fechas iguales
}

espero sea de ayuda.

salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de orlando

Comparar campos de una tabla con un calendario

Publicado por orlando orlandorodriguez40@hotmail.com (55 intervenciones) el 20/09/2014 17:57:56
Muchas gracias por su repuesta.

Lo que necesito es realmente esto:

Cuando un paciente solicita un nuevo turno se abre un calendario donde primero se selecciona el profesional médico con el cual desea atenderse.

Una vez seleccionado el medico, se desplegará un calendario mensual resaltando los días en los cuales dicho profesional atiende, coloreando con rojo los días que tiene el cupo completo y verde en los cuales existen turnos disponibles.

Una vez que se selecciona el día, se desplegara una visión completa del día seleccionado dividido por turnos, en rojo los que ya han sido tomados y en verde los que están disponibles. Cuando se ingrese el turno, el mismo se pondrá de color rojo.
Luego en base a los dias y horarios disponibles y a la preferencia del paciente se selecciona dia y hora del turno en cuestion.

Una vez definido el turno se deben ingresar los datos del paciente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de orlando

Comparar campos de una tabla con un calendario

Publicado por orlando orlandorodriguez40@hotmail.com (55 intervenciones) el 22/09/2014 02:43:58
Gracias Gonzalo de inmediato pruebo y te aviso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar