Foros del Web » Programando para Internet » PHP »

Validar si se envia metodo post o no

Estas en el tema de Validar si se envia metodo post o no en el foro de PHP en Foros del Web. Hola a todos como están, tengo el siguiente problema. Cuento con un formulario en el cual editan información especialmente cuento con tres campos de fecha ...
  #1 (permalink)  
Antiguo 18/06/2015, 12:10
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 7 meses
Puntos: 2
Validar si se envia metodo post o no

Hola a todos como están, tengo el siguiente problema.

Cuento con un formulario en el cual editan información especialmente cuento con tres campos de fecha hasta hai no hay problema alguno el tema esta que pasa si en esos campos no realizan ninguna modificación se debería enviar la misma información para el primer input lo realiza sin problemas para los otros dos inputs uso una función para formatear la fecha he aqui el problema cuando no realizan ningún cambio se guarda la fecha de inicio de mysql es decir 31-12-1989 pero si hacen algún cambio la función trabaja bien para lo cual tengo algo así:

Código PHP:
Ver original
  1. $fechareq=$_POST["fechareq"]; //este es el primer input
  2. $fechapro=cambiarFormatoFecha($_POST["fechapro"]); // este es el segundo input
  3. $fechacon=cambiarFormatoFecha($_POST["fechacon"]); //este es el tercer input

Gracias de antemano por su ayuda
  #2 (permalink)  
Antiguo 18/06/2015, 12:34
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Validar si se envia metodo post o no

¿Conoces las estructuras de control?

Código PHP:
Ver original
  1. if (!empty($_POST['algo'])) {
  2.  // OK
  3. }
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/06/2015, 12:58
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 7 meses
Puntos: 2
Respuesta: Validar si se envia metodo post o no

Ya lo intene bueno los hice asi +- no se si esta bien
Código PHP:
Ver original
  1. if (!empty($_POST["fechacon"])){
  2.     $fechacon=cambiarFormatoFecha($_POST["fechacon"]);
  3. }

pero lo hace igual igual manda en 31-12-1969 cuando no hago ningun cambio en ese input
  #4 (permalink)  
Antiguo 18/06/2015, 13:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Validar si se envia metodo post o no

Cita:
pero lo hace igual igual manda en 31-12-1969 cuando no hago ningun cambio en ese input
¿Manda a dónde?

En el código que muestras no se ve que hagas algo con dichos valores.

¿Y si mejor muestras el código real para no andar perdiendo el tiempo adivinando?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 18/06/2015, 13:12
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 7 meses
Puntos: 2
Respuesta: Validar si se envia metodo post o no

A la Base de datos de la siguiente manera
Código PHP:
Ver original
  1. require_once('./funciones/conexion.php');
  2. $fechareq=$_POST["fechareq"]; //este es el primer input
  3. $fechapro=cambiarFormatoFecha($_POST["fechapro"]); // este es el segundo input
  4. $fechacon=cambiarFormatoFecha($_POST["fechacon"]); //este es el tercer input
  5. $link = getConexion();
  6.     $query = "UPDATE seg_comercial SET
  7. seg_fecha_requerimiento='".$fechareq."',
  8. seg_fecha_ultimo_contac='".$fechacon."',
  9. seg_fecha_proximo_contac='".$fechapro."',
  10. where seg_id='".$id_seg."'";
  11. @mysql_query($query, $link) or die(mysql_error());
he echo un var_dump y me arroga esto
Código HTML:
Ver original
  1. string(10) "24-06-2015"
y en la BD se muestra asi 00-00-0000
  #6 (permalink)  
Antiguo 18/06/2015, 13:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Validar si se envia metodo post o no

¿Y la estructura de control entonces donde debería de ir?

Por lo que se entiende no deberías jamás hacer SET de campos que no han cambiado, eso lo deberías controlar.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 18/06/2015, 14:10
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 7 meses
Puntos: 2
Respuesta: Validar si se envia metodo post o no

Claro el primer campo eso no cambia
Código PHP:
Ver original
  1. $fechareq=$_POST["fechareq"];
los otros dos de campos deberían esta a disposición del usuario para cambiar por eso le hago un set los campos a actualizarse son
Código PHP:
Ver original
  1. $fechapro=cambiarFormatoFecha($_POST["fechapro"]); // este es el segundo input
  2. $fechacon=cambiarFormatoFecha($_POST["fechacon"]);
cuanto te refieres a la estructura de control te refieres al html?
porque si es asi solo envio mi formulario a travez del metodo post y con un boton de submit
  #8 (permalink)  
Antiguo 18/06/2015, 14:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Validar si se envia metodo post o no

Cita:
cuanto te refieres a la estructura de control te refieres al html?
No, me refiero a la lógica necesaria para construir tu consulta de SQL.

Porque si dos valores son opcionales no debería tomarlos en cuanta todo el tiempo ¿verdad?

Podrías hacer algo así:
Código PHP:
Ver original
  1. $sql = "UPDATE tabla SET ";
  2.  
  3. $conds = []; // array de condiciones SET
  4. $conds []= "columna = '$valor'";
  5.  
  6. if (!empty($x)) {
  7.   $conds []= "x = '$x'";
  8.   // etc.
  9. }
  10.  
  11. $sql .= join(', ', $conds);

¿Se entiende la idea?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 18/06/2015, 14:24
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 7 meses
Puntos: 2
Respuesta: Validar si se envia metodo post o no

que tonto pues la estructura de mi consulta sql es algo sencillo como te lo mostre anteriormente
Código PHP:
Ver original
  1. $link = getConexion();
  2.     $query = "UPDATE seg_comercial SET
  3. seg_fecha_requerimiento='".$fechareq."',
  4. seg_fecha_ultimo_contac='".$fechacon."',
  5. seg_fecha_proximo_contac='".$fechapro."',
  6. where seg_id='".$id_seg."'";
  7. @mysql_query($query, $link) or die(mysql_error());

en cuanto al código que me mencionas como lo aplicaría a mi lógica teniendo en cuenta que si los dos campos
Código PHP:
Ver original
  1. $fechapro=cambiarFormatoFecha($_POST["fechapro"]); // este es el segundo input
  2. $fechacon=cambiarFormatoFecha($_POST["fechacon"]);
no son modificados se envíen con la misma información

Y Gracias por tu ayuda y tiempo
  #10 (permalink)  
Antiguo 18/06/2015, 14:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Validar si se envia metodo post o no

Cita:
en cuanto al código que me mencionas como lo aplicaría a mi lógica teniendo en cuenta que si los dos campos
Esa es precisamente tu tarea.

Estudia bien cual es el objetivo del ejemplo que te di y luego aplicalo al tuyo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 18/06/2015, 14:48
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 7 meses
Puntos: 2
Respuesta: Validar si se envia metodo post o no

Una consulta en el Join es decir en esto
Código PHP:
Ver original
  1. $sql .= join(', ', $conds);
lo que esta entre ' ' pongo mis variables
  #12 (permalink)  
Antiguo 18/06/2015, 15:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Validar si se envia metodo post o no

Cita:
lo que esta entre ' ' pongo mis variables
No, analiza bien lo siguiente:

Código PHP:
Ver original
  1. $conds = [];
  2.  
  3. $conds []= 'a = b';
  4. $conds []= 'x = y';
  5.  
  6. echo join(', ', $conds); // a = b, x = y

Ejecuta el código y verás lo que resulta.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: envia, fecha, formulario, metodo, mysql, post
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 12:17.