Foros del Web » Programando para Internet » PHP »

valida campo con PHP

Estas en el tema de valida campo con PHP en el foro de PHP en Foros del Web. Hola amigos, mi siguiente problema es hacerca de la validacion de los campos con php, lo que pasa es que no sé cómo hacer para ...
  #1 (permalink)  
Antiguo 22/03/2008, 11:48
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
valida campo con PHP

Hola amigos, mi siguiente problema es hacerca de la validacion de los campos con php, lo que pasa es que no sé cómo hacer para que si el usuario ha llenado todo el formulario y solo tuvo un error por ejemplo con su mail, lo que quiero es que los demas campos queden ya con los valores que cargo el usuario para que el mismo no tenga que volver a cargarlos.

Estos ejemplos se que se hacen en muchos casos con JS, pero la verdad es que de js no se casi nada, pero si me dan una manito me las arreglo.

Muchas gracias!!!
  #2 (permalink)  
Antiguo 22/03/2008, 12:19
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: valida campo con PHP

hola, esencialmente lo que debes hacer es poner en el value de cada campo su propio valor enviado por $_POST:
Código PHP:
<input type="text" name="campo" value="<?php echo $_POST['campo'?>" />
algo asi, pero no solo eso, debes al final del script destruir las variables para que si todo salio bien, que no te los muestre, para eso usarias unset.

algo asi:
Código PHP:
<?php
if(isset($_POST['form'])){
    if(!empty(
$_POST['campo1']) && $_POST['campo2']){
        
// aqui verificas si las variables vienen llenas o no
        // de ser correcto procesas los datos
        
$var1 $_POST['var1'];
        
$var2 $_POST['var2'];        
        
// haces un INSERT en tu DB o lo que sea que quieras hacer
    
}else{
        
// de lo contrario envias un mensaje de error
        
echo "debe llenar todos los datos";
    }
    
// aqui destruyes las variables
    // ya que todo salio bien
    
unset($var1);
    unset(
$var2);
}
?>
<form name="form" action="post">
    <input type="text" name="campo1" value="<?php echo $var1 ?>" />
    <input type="text" name="campo2" value="<?php echo $var2 ?>" />
</form>
prueba a ver, es un ejemplo que se me ocurrio al vuelo.

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #3 (permalink)  
Antiguo 22/03/2008, 12:29
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
Re: valida campo con PHP

Dale, lo pruebo y te comento como va.
  #4 (permalink)  
Antiguo 22/03/2008, 12:41
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
Re: valida campo con PHP

Oye, y con un textarea? no llevan values, o sí?

<textarea name="consulta" rows="10" cols="40"></textarea>
  #5 (permalink)  
Antiguo 22/03/2008, 12:50
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: valida campo con PHP

Código PHP:
<textarea name="nombre_textarea" rows="10" cols="40"><?php echo $nombre_textarea ?></textarea>
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #6 (permalink)  
Antiguo 23/03/2008, 16:09
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
Re: valida campo con PHP

Hola, aqui ando nuevamente con otro problema de novatos.
He probado el codigo pero no funciona cuando deseo hacerlo en la misma pagina donde procesa. no se si me explico bien...es decir que cuando envia el formulario y tiene errores en esa misma pagina me muestra el error y por ende, ahi mismo tiene que dejar todos los campos cargados menos el que tiene error o esta vacio.

Tambien he probado que el error me muestre en otra pagina y colocando un boton volver para que regrese a completar el formulario, me devuelve el formulario vacío, quizas no se como hacerlo.

La única manera en que hice andar el codigo es haciendo que me de error en una segunda pagina y volver a la pagina con el boton del navegador, asi fue la unica manera en que me devolvio los campos completos.

Muchas gracias rogertm!!!
  #7 (permalink)  
Antiguo 23/03/2008, 22:04
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 19 años, 5 meses
Puntos: 4
Re: valida campo con PHP

Prueba haciendo post a la misma pagina...
__________________
Un Caballero Jura Lealtad. Usa su espada para suprimir la Injusticia No Conoce el Odio y Tampoco el AMOR...
  #8 (permalink)  
Antiguo 24/03/2008, 07:43
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
Re: valida campo con PHP

A esto te refieres con "Haciendo post a la misma pagina"??

Código PHP:

<form id="form" method="post" action="la_misma_pagina.php" name="form"
  #9 (permalink)  
Antiguo 24/03/2008, 07:57
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Re: valida campo con PHP

Seria así como te recomiendan

Código PHP:
<form id="form" method="post" action="<?php $_SERVER['PHP_SELF'?>" name="form">

Saludos.
  #10 (permalink)  
Antiguo 24/03/2008, 08:58
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
Re: valida campo con PHP

Pues no, si es solo eso, igualmente no queda el formulario relleno.
  #11 (permalink)  
Antiguo 24/03/2008, 09:48
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: valida campo con PHP

En el código que te dio rogertm borra estas lineas (que a mi parecer no tienen utilidad):

Código PHP:
    // aqui destruyes las variables
    // ya que todo salio bien
    
unset($var1);
    unset(
$var2); 
o en todo caso mételas dentro del if(){} [ ¡ no el else ! ]

Saludos,
  #12 (permalink)  
Antiguo 24/03/2008, 10:36
Avatar de Marcos071  
Fecha de Ingreso: enero-2006
Ubicación: Presidencia Roque Sáenz Peña - Chaco
Mensajes: 384
Antigüedad: 18 años, 3 meses
Puntos: 5
Re: valida campo con PHP

Este es el codigo que tengo y asi me funciona pero no se si es lo correcto, y las maneras de validar el campo no creo que sea la correcta, con solo rellenar un campo con cualquier caracter. Eso buscaré pero lo que me interesa es que si esta bien hacerlo asi:


Código PHP:
...
...
...
...
        <!-- Evalua Formulario -->
<?php 

    
if($enviar==true){ 
        
$nombre =$nombre;
        
$apellido =$apellido;        
        
$email =$email;
        
$telefono =$telefono;
        
$calle1 =$calle1;
        
$calle2 =$calle2;
        
$numerocalle =$numerocalle;
        
$ciudad =$ciudad;
        
$consulta =$consulta;
    
    if(
$nombre==""||$apellido==""||$email==""||$consulta==""){ ?>      
        <div id="errorformulario">
        <div id="error">Error!</div>
        <div style="float:left; width:450px;"><p class="tam16 rojo">Por favor ingresa 
        bien los datos en los campos marcados con (*).</p></div>
        </div>

<?php }else{ ?>
    
        <div id="errorformulario">
        <div id="error">Gracias por Contar con nosotros</div>
        <div style="float:left; width:450px;"><p class="tam16 rojo">Tu formulario ha sido
        enviado exitosamente. En beve te responderemos.</p></div>
        </div>

<?php }    }

    
?> 


        <div id="contieneform">
        <form id="form" method="post" name="form">
        <fieldset>
        <legend>Formulario de Contacto</legend>
        <p class="tam16">Los campos que tienen (<span class="rojo">*</span>) son obligatorios completarlos.</p>
        
        <div id="datospersonales">Datos Personales</div>
        
        <div id="camponombre">
        <span class="rojo"> *</span>
        <span class="tam12">Nombre:</span><br />
        <input type="text" name="nombre" class="camponombre" value="<?php echo $nombre?>" />
        </div>

...
...
..etc...


Gracias!!!

Última edición por Marcos071; 24/03/2008 a las 10:38 Razón: Agregar acotaciones
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:08.