Foros del Web » Programando para Internet » PHP »

Validar Campo

Estas en el tema de Validar Campo en el foro de PHP en Foros del Web. Buen dia, se que es algo facil para aquellos que estan muy metidos con php, pero... Como puedo hacer con if tengo un campo de ...
  #1 (permalink)  
Antiguo 22/04/2016, 15:59
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Pregunta Validar Campo

Buen dia, se que es algo facil para aquellos que estan muy metidos con php, pero...

Como puedo hacer con if tengo un campo de texto en el cual escribo una fecha con el formato d/m/Y. lo que necesito hacer es validar que el campo no este vacio y que si la fecha escrita es mayor a la del dia DATE() que procesa si no salga el mensaje de que aun no esta lista...

Saludos.
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #2 (permalink)  
Antiguo 22/04/2016, 17:25
Avatar de rodrypaladin
Moderador
 
Fecha de Ingreso: abril-2010
Ubicación: Madrid
Mensajes: 2.127
Antigüedad: 14 años, 1 mes
Puntos: 468
Respuesta: Validar Campo

para validar que no esté vacío solo tienes que usar la función empty

Código PHP:
Ver original
  1. $str = $_POST["name"];
  2.  
  3. if(empty($str)) {
  4.   echo "esta vacío";
  5. }
  6. else {
  7.   echo "NO esta vacío";
  8. }

Aunque si se trata de un campo de texto al vez te sea más eficaz no validar que no esté vacio, si no que esté definido.

Código PHP:
Ver original
  1. $str = $_POST["name"];
  2.  
  3. if(isset($str)) {
  4. echo "Está definido";
  5. }
  6. else {
  7. echo "No está definido";
  8. }

Respecto a la fecha.. ¿ Los formularios te dejan poner fechas posteriores al día de hoy ???
__________________
No te olvides de dar +1 a quien te echa un cable ;)
  #3 (permalink)  
Antiguo 22/04/2016, 17:29
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Validar Campo

Correcto eso lo tengo, pero lo que necesito es lo siguiente

si el campo esta vacio me mande el mensaje campos vacios
si el campo es igual a mi variable me mande el mensaje utiliza otro
si el campo es menor o mayor a mi variable continuamos...

Saludos.
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #4 (permalink)  
Antiguo 22/04/2016, 17:38
Avatar de rodrypaladin
Moderador
 
Fecha de Ingreso: abril-2010
Ubicación: Madrid
Mensajes: 2.127
Antigüedad: 14 años, 1 mes
Puntos: 468
Respuesta: Validar Campo

dale formato a la fecha con date("d-m-Y") y luego comparas:

Código PHP:
Ver original
  1. $fecha1 = "19-04-2016";
  2. $fecha2 = "19-04-2016";
  3.  
  4. if($fecha1 != $fecha2 )
  5. {
  6. echo 'continuamos';
  7. }
  8. else
  9. {
  10. echo 'mensaje de error';
  11. }

Esto cumple con las dos condiciones, y el código de antes con la primera condición
__________________
No te olvides de dar +1 a quien te echa un cable ;)
  #5 (permalink)  
Antiguo 23/04/2016, 05:33
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Validar Campo

La forma de hacerlo es convirtiendo las fechas a formato de tiempo unix mediante strtotime , de esta forma te garantizas que la comparación siempre sea correcta.

Código PHP:
Ver original
  1. $fecha=strtotime("2016-04-23");
  2. $fechaHoy=strtotime(date('Y-m-d'));
  3.  
  4. if ($fecha > $fechaHoy){
  5. echo 'La fecha es mayor a la fecha de hoy.';
  6. }else {
  7. echo 'La fecha es menor a la fecha de hoy.';
  8. }

Aun que esto puede tener un pequeño inconveniente:

Cita:
El rango válido de una marca de tiempo es típicamente desde Fri, 13 Dec 1901 20:45:54 UTC a Tue, 19 Jan 2038 03:14:07 UTC. (Estas son las fechas que se corresponden con los valores máximo y mínimo de un entero con signo de 32 bit.)

Antes de PHP 5.1.0, no todas las plataformas admitían marcas de tiempo negativas, por lo que el rango de fechas puede estar limitado a no anteriores a la época Unix. Esto significa que, p.ej., las fechas anteriores al 1 de enero de 1970 no funcionarán en Windows, en algunas distribuciones de Linux, y en otros pocos sistemas operativos.


Para PHP versión 64-bit, el rángo válido de fechas es en la práctica infinito, ya que 64 bits pueden representar aproximadamente 293.000 millones de años en cualquier dirección.
__________________
Unset($vida['malRollo']);
  #6 (permalink)  
Antiguo 23/04/2016, 07:16
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 8 meses
Puntos: 145
Respuesta: Validar Campo

Cabe destacar que dia-mes-año no es lo mismo que dia/mes/año para PHP.
__________________
¿Te sirvió la respuesta? Deja un +1

Etiquetas: campo, fecha
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 21:31.