Ver Mensaje Individual
  #12 (permalink)  
Antiguo 13/07/2007, 00:20
alexserver
 
Fecha de Ingreso: junio-2007
Mensajes: 22
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: validando formulario

Heeeeeeeeeey, ya revolvieron al pobre nodream !!!
mira nodream, vayamos de nuevo, de todas las recomendaciones, la que me parece mas sobria es la de Carlx, ahora, todo esta bien hasta aqui :
Cita:
Solo un empujoncillo mas, como hago para enviar las variables a la pagina del formulario usando la funcion header, en caso de error?, lo que quiero es que aparezca un mensaje al lado de la caja de texto o donde sea que haya ocurrido el error, por ejemplo:

si tengo tres cajas de texto una para el nombre, una para el primer apellido y otra para el segundo apellido, y suponiendo que el error esta en el segundo apellido quiero que salga una leyenda a un lado de esa caja de texto.

En este momento lo tengo así


1.- Pagina del formulario donde el form action="validardata.php"

2.- En valida data obviamente valido, y

2a.- si no hay error inserto los datos en la base de datos, y despues envio a una pagina de exito usando Header, en la pagina de exito ya he conseguido que se refresque despues de unos segundos usando la etiqueta que mencionas.

2b. si existe algun dato mal, mando con header a la pagina del formulario, en esa pagina ya tengo un bloquecito de php antes de cada elemento del formulario para que mande un error en ese caso, el problema es que al parecer no envia los valores que tenia antes ¿como hago para que se regresen las variables a la pagina del formulario?
Bueno, checa este truco :

cuando estes en la pagina de validacion (que es la misma que la de almacenamiento en Base de Datos), y falle algun metodo por validacion, haz lo siguiente :
1) agarra las variables que quieras enviar a la pagina de formulario....
2)metelas en un array asociativo
3) serializa ese array y asignalo a una variable
Código PHP:
$var serialize($array_vars); 
4) asigna esa variable a la direccion de tu formulario, y redirecciona usando la funcion header, como decia Carlx
Código PHP:
header("location:formulario.php?tunuevo_array=" $var ) ; 
5) en la pagina donde este el formulario, extrae esa variable asi :
Código PHP:
$var $_GET['tunuevo_array']; 
6) asignaselo a otra variable, pero desserializando
Código PHP:
 $tu_array unserialize($var); 
7) listo, ya tienes el array de las variables en la pagina que querias !!

ojo con las funciones serialize y unserialize, estas funciones "compactan" y "descompactan" un array objeto o variable, haciendolos faciles de transportar entre web, y mas seguros, porque todos van a ver en la barra de direcciones valores inentendibles.

si tienes dudas, con todo gusto escribeme a [email protected]

saludos