Foros del Web » Programando para Internet » PHP »

Se puede hacer esto?

Estas en el tema de Se puede hacer esto? en el foro de PHP en Foros del Web. Holas estimados, Bueno, el tema es bastante especifico, sucede que desarrollando un sistema de inscripción, y estoy el tema de las respectivas validaciones que son ...
  #1 (permalink)  
Antiguo 24/04/2009, 16:54
Avatar de Jona_than  
Fecha de Ingreso: noviembre-2005
Ubicación: Chile
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 0
Holas estimados,

Bueno, el tema es bastante especifico, sucede que desarrollando un sistema de inscripción, y estoy el tema de las respectivas validaciones que son propias, como correo tengo formato adecuado, que esten completos los campos, etc.

El tema es que cuando entra a la validación de algún campo y esta error, como todo bien sistema genera un mensaje en pantalla, antes de guardar los datos, y enviar los datos respectivamente...el tema es que obviamente si hay algún campo faltante tiene que volver a re-rellenar el formulario, pero en mi sistema :( se pierden los datos, y tiene que volver a comenzar a rellenar todo, es posible generar de alguna forma que los datos que estan buenos guardarlos y que sean devueltos al volver...alguna función, condición, etc.

Saludos.

Se me ocurren algunas logicas como $_GET $_POST $HTTP_POST_VARS etc...
__________________
- Fasecreativa
- Twitter @jonyram

Última edición por GatorV; 24/04/2009 a las 17:24
  #2 (permalink)  
Antiguo 24/04/2009, 17:00
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Se puede hacer esto?

Guarda el valor de los campos en variables de SESSION, y luego en tu formulario en el value de, por ejemplo, un textfield:

<input type="text" name="nombre" value="<?php if(isset($_SESSION['nombre'])) { echo $_SESSION['nombre']; } ?>" />

Mas informacion sobre sessiones en:
http://www.php.net/manual/en/book.session.php
  #3 (permalink)  
Antiguo 24/04/2009, 21:27
Avatar de Jona_than  
Fecha de Ingreso: noviembre-2005
Ubicación: Chile
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 0
Excelente muchas gracias, sigo solito :) ahora.

Saludos.

Solamente un percanse más, el tema que cuando yo ponga volver con el mismo navegador o tambien puedo hacer :O! con un link de la pagina, osea....así

Código PHP:
Error en el campo<br />
<a href="<?=$_PHP_SELF;?>">Volver</a>
Se me entiende?...porque el tema de $_SESSION solamente funciona cuando :O apreto atrás con mi navegador, pero si es un link? igual... manera?

Saludos.

please, alguien me dice...
__________________
- Fasecreativa
- Twitter @jonyram

Última edición por GatorV; 25/04/2009 a las 15:30
  #4 (permalink)  
Antiguo 25/04/2009, 09:19
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Se puede hacer esto?

Cita:
Se me entiende?...porque el tema de $_SESSION solamente funciona cuando :O apreto atrás con mi navegador, pero si es un link? igual... manera?
O_O Muestra el codigo como lo tienes. Las sessiones no solo funcionan cuando presionas atras en el navegador.
  #5 (permalink)  
Antiguo 25/04/2009, 10:56
Avatar de Jona_than  
Fecha de Ingreso: noviembre-2005
Ubicación: Chile
Mensajes: 155
Antigüedad: 18 años, 4 meses
Puntos: 0
Respuesta: Se puede hacer esto?

Código PHP:
<?php
}else {
        if (!isset(
$HTTP_POST_VARS["apellidos"]) || $HTTP_POST_VARS["apellidos"] == '') {
        
$status1 "Faltan completar los campos requeridos<br />";
        
$status 1;
        }else{
         if (!isset(
$HTTP_POST_VARS["nombres"]) || $HTTP_POST_VARS["nombres"] == '') {
         
$status1 .= "Faltan completar los campos requeridos<br />";
         }else{
          if(
comprobar_mail($HTTP_POST_VARS['mail'])){
           if (!isset(
$HTTP_POST_VARS["profesion"]) || $HTTP_POST_VARS["profesion"] == '') {
           
$status1 .= "Faltan completar los campos requeridos<br />";
           }else{
            if (!isset(
$HTTP_POST_VARS["uie"]) || $HTTP_POST_VARS["uie"] == '') {
            
$status1 .= "Faltan completar los campos requeridos<br />";
            }else{
             if (!isset(
$HTTP_POST_VARS["direccion"]) || $HTTP_POST_VARS["direccion"] == '') {
             
$status1 .= "Faltan completar los campos requeridos<br />";
             }else{
              if (!isset(
$HTTP_POST_VARS["ciudad"]) || $HTTP_POST_VARS["ciudad"] == '') {
              
$status1 .= "Faltan completar los campos requeridos<br />";
              }else{
               if (!isset(
$HTTP_POST_VARS["pais"]) || $HTTP_POST_VARS["pais"] == '') {
               
$status1 .= "Faltan completar los campos requeridos<br />";
               }else{
                if (!isset(
$HTTP_POST_VARS["socio"]) || $HTTP_POST_VARS["socio"] == '') {
                
$status1 "Faltan completar los campos requeridos";
                }else{
                 if (!isset(
$HTTP_POST_VARS["trabajo"]) || $HTTP_POST_VARS["trabajo"] == '') {
                 
$status1 "Faltan completar los campos requeridos";
                 }else{
                  if (!isset(
$HTTP_POST_VARS["titulo"]) || $HTTP_POST_VARS["titulo"] == '') {
                  
$status1 .= "Faltan completar los campos requeridos<br />";
                  }else{
                   if (!isset(
$HTTP_POST_VARS["autores"]) || $HTTP_POST_VARS["autores"] == '') {
                   
$status1 .= "Faltan completar los campos requeridos<br />";
                   }else{
                    if (!isset(
$HTTP_POST_VARS["pago"]) || $HTTP_POST_VARS["pago"] == '') {
                    
$status1 .= "Faltan completar los campos requeridos<br />";
                    }else{
                     if (!isset(
$HTTP_POST_VARS["razonsocial"]) || $HTTP_POST_VARS["razonsocial"] == '') {
                     
$status1 .= "Faltan completar los campos requeridos<br />";
                     }else{
                      if (!isset(
$HTTP_POST_VARS["rutf"]) || $HTTP_POST_VARS["rutf"] == '') {
                      
$status1 .= "Faltan completar los campos requeridos<br />";
                      }else{
                       if (!isset(
$HTTP_POST_VARS["girof"]) || $HTTP_POST_VARS["girof"] == '') {
                       
$status1 .= "Faltan completar los campos requeridos<br />";
                       }else{
                        if (!isset(
$HTTP_POST_VARS["direccionf"]) || $HTTP_POST_VARS["direccionf"] == '') {
                        
$status1 .= "Faltan completar los campos requeridos<br />";
                        }else{
                         if (!isset(
$HTTP_POST_VARS["ciudadf"]) || $HTTP_POST_VARS["ciudadf"] == '') {
                         
$status1 .= "Faltan completar los campos requeridos<br />";
                         }else{
                          if (!isset(
$HTTP_POST_VARS["nombred"]) || $HTTP_POST_VARS["nombred"] == '') {
                          
$status1 .= "Faltan completar los campos requeridos<br />";
                          }else{
                           if (!isset(
$HTTP_POST_VARS["direcciond"]) || $HTTP_POST_VARS["direcciond"] == '') {
                           
$status1 .= "Faltan completar los campos requeridos<br />";
                           }else{
                            if (!isset(
$HTTP_POST_VARS["comunad"]) || $HTTP_POST_VARS["comunadd"] == '') {
                            
$status1 .= "Faltan completar los campos requeridos<br />";
                            }else{  
                             if (!isset(
$HTTP_POST_VARS["ciudadd"]) || $HTTP_POST_VARS["ciudadd"] == '') {
                             
$status1 .= "Faltan completar los campos requeridos<br />";
                             }else{  
                              if (!isset(
$HTTP_POST_VARS["paisd"]) || $HTTP_POST_VARS["paisd"] == '') {
                              
$status1 .= "Faltan completar los campos requeridos<br />";
                              }else{ 
                               if (!isset(
$HTTP_POST_VARS["retiro"]) || $HTTP_POST_VARS["retiro"] == '') {
                               
$status1 .= "Faltan completar los campos requeridos<br />";
                               }else{  
                                
$cuerpo "ANTECEDENTES PERSONALES\n";
                                
$cuerpo .= "Apellidos: " $HTTP_POST_VARS["apellidos"] . "\n";
                                
$cuerpo .= "Nombres: " .$HTTP_POST_VARS["nombres"]. "\n";
                                
$cuerpo .= "Profesión: " .$HTTP_POST_VARS["profesion"]. "\n";
                                
$cuerpo .= "Dirección: " .$HTTP_POST_VARS["direccion"]. "\n";
                                
$cuerpo .= "Ciudad: " .$HTTP_POST_VARS["ciudad"]. "\n";
                                
$cuerpo .= "País: " .$HTTP_POST_VARS["pais"]. "\n";
                                if(
$HTTP_POST_VARS["socio"] = 1) { 
                                 
$socio_var "SI";
                                 
$cuerpo .= "Socio: " .$socio_var"\n";
                                }else{
                                 
$socio_var "NO";
                                 
$cuerpo .= "Socio: " .$socio_var"\n";
                                }
                                if(
$HTTP_POST_VARS["trabajo"] = 1){
                                 
$trabajo_var "SI";
                                 
$cuerpo .="Presenta trabajo: " .$trabajo_var"\n";
                                }else{
                                 
$trabajo_var "NO";
                                 
$cuerpo .="Presenta trabajo: " .$trabajo_var"\n";
                                }                    
                                 
$cuerpo .= "Titulo trabajo: " .$HTTP_POST_VARS["titulo"]. "\n";
                                 
$cuerpo .= "Autores (solo si presenta trabajo): " .$HTTP_POST_VARS["autores"]. "\n\n";
                                 
$cuerpo .= "FORMAS DE PAGO\n";
                                if(
$HTTP_POST_VARS["pago"] != 0){
                                 
$pago2 "Cuenta Corp Banca";
                                 
$cuerpo .="Modo de pago: " .$pago2"\n\n";
                                }else{
                                 if(
$HTTP_POST_VARS["pago"] != 1){
                                  
$pago2 "Transferencia bancaria via Internet";
                                  
$cuerpo .="Modo de pago: " .$pago2"\n\n";
                                 }else{
                                   if(
$HTTP_POST_VARS["pago"] = 2)
                                   {
                                    
$pago2 "Otro metodo de pago";
                                    
$cuerpo .="Modo de pago: " .$pago2"\n\n";
                                   }
                                 }
                                }
                                
$cuerpo .= "DATOS A FACTURAR\n";
                                
$cuerpo .= "Razon social: " .$HTTP_POST_VARS["razonsocial"]. "\n";
                                
$cuerpo .= "Rut: " .$HTTP_POST_VARS["rutf"]. "\n";
                                
$cuerpo .= "Giro: " .$HTTP_POST_VARS["girof"]. "\n";
                                
$cuerpo .= "Dirección:" .$HTTP_POST_VARS["direccionf"]. "\n";
                                
$cuerpo .= "Ciudad: " .$HTTP_POST_VARS["ciudadf"]. "\n\n";
                                
$cuerpo .= "DATOS DE DESPACHO\n";
                                
$cuerpo .= "Nombre: " .$HTTP_POST_VARS["nombred"]. "\n";
                                
$cuerpo .= "Dirección: " .$HTTP_POST_VARS["direcciond"]. "\n";
                                
$cuerpo .= "Ciudad: " .$HTTP_POST_VARS["ciudadd"]. "\n";
                                
$cuerpo .= "Comuna: " .$HTTP_POST_VARS["comunad"]. "\n";
                                
$cuerpo .= "País: " .$HTTP_POST_VARS["paisd"]. "\n";
                                if(
$HTTP_POST_VARS["retiro"] = 1){
                                 
$retiro_var "SI";
                                 
$cuerpo .= "Retiro congreso: " .$retiro_var"\n";
                                }else{
                                 
$retiro_var "NO";
                                 
$cuerpo .= "Retiro congreso: " .$retiro_var"\n";
                                }
                     
                               }
                              }
                             }
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   }
                  }
                 }
                }
               }
              }                        
             }
            }
           }
          }else{
          
$status2 "El correo no corresponde al formato [email protected]";
         } 
        }
       }
if(
$status 1)
{
?>
<table>
<tr>
<td><strong>Inscricipción no pudo ser realizada con exito</strong><br /><br />
<?php echo $status1;?><br />
<?php echo $status2;?><br />
<a href="<?=$_PHP_SEF;?>">[Volver]</a></td>
</tr>
</table>
<?php
}else{
?>
<table>
<tr>
<td><strong>Inscripción realizada con exito.</strong><br />En breves momentos le llegara un correo certificando su inscripción satisfactoría, ante cualquier problema la administración del congreso se comunicara con usted.<br /><br />
<a href="http://host8.chileadmin.com/~congreso">[Volver]</a></td>
</tr>
</table>
<?php
}
    
#cierre de toda conexion
    
mysql_close($conexion);
}
?>
Esa parte es el else....donde se supone debería estar el tema de sesiones, todavía no lo modifico, solamente me asalta esta ultima duda.

Todavía no le incorpora las sesiones...
__________________
- Fasecreativa
- Twitter @jonyram
  #6 (permalink)  
Antiguo 25/04/2009, 11:16
Avatar de Kenichi  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 160
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Se puede hacer esto?

Hola, porque no intentas usar JavaScript? Asi, en vez de enviar el formulario y volver si esta mal, directamente si esta mal no se envia?
Puedes hacer algo como esto mira:

Código HTML:
<html>
<head>
<script type="text/javascript">
<!--
function verificar()
{
 var nombre = document.formulario1.nombre.value;
 var edad = document.formulario1.edad.value;
 if (nombre == '')
 {
 alert("Para continuar debes ingresar tu nombre");
 return false;
 }
 else if (edad == '')
 {
 alert("Para continuar debes ingresar tu edad");
 return false;
 }
 else
 {
 document.formulario1.submit();
 return true;
 }
}
-->
</script>
</head>
<body>
 <form action="procesar.php" method="post" name="formulario1">
  Tu Nombre: <input type="text" name="nombre">
  Tu edad: <input type="text" name="edad"><br>
  <input type="button" value="Enviar" onClick="verificar()">
 </form>
</body>
</html> 
Supongo que puedes editarlo para ti, si tienes cualquier problema dime, pero basicamente lo que hace es la verificacion php antes de enviar el formulario y si esta todo bien se envia, sino no lo envia. Saludos
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 09:17.