Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/11/2010, 16:07
jorge_f_am
 
Fecha de Ingreso: noviembre-2010
Mensajes: 14
Antigüedad: 13 años, 5 meses
Puntos: 1
Pregunta Validación formulario de contacto usando Header+$_POST+$_GET

Hola amigos.
Tengo un problema el cual comparto con ustedes, he hecho 2 archivos en php uno llamado registro.php y otro llamado validar_registro.php.
Obvio en el primer archivo tengo todo el diseño y controles que usa un formulario de contacto usando el método de envío="POST"y action="validar_registro.php".

Envío toda la info. al archivo llamado validar_registro.php, y verifico que los controles (cuadros de texto+cuadros de lista) no estén vacíos, usando condicional IF (anidada para abarcar todos los controles), si estan vacíos o su información es incorrecta, los regreso al archivo registro.php usando Header y enviando los parámetros en la url con $_POST de este modo:

header('Location: ../registro.php?nombre='.$_POST['registro_nombres']."&apellido=".$_POST['registro_apellidos']."&correoelectronico=".$_POST['registro_correoelectronico']."&password=".$_POST['registro_password']."&repetir_password=".$_POST['repetir_registro_password']."&genero=".$_POST['registro_lista_genero']."&mes=".$_POST['registro_lista_nacimiento_moth']."&dia=".$_POST['registro_lista_nacimiento_day']."&anio=".$_POST['registro_lista_nacimiento_year']."&pais=".$_POST['registro_lista_pais']."&ciudad=".$_POST['registro_lista_ciudad']."&profesion=".$_POST['registro_lista_profesion']."&direccion=".$_POST['registro_direccion']);

Para finalizar, los recibo en el archivo registro.php de este modo:

$nombre = $_GET['registro_nombres'];
$apellido = $_GET['registro_apellidos'];
$correoelectronico= $_GET['registro_correoelectronico'];
$password = $_GET['registro_password'];
$repetir_password = $_GET['repetir_registro_password'];
$genero = $_GET['registro_lista_genero'];
$mes = $_GET['registro_lista_nacimiento_month'];
$dia = $_GET['registro_lista_nacimiento_day'];
$anio = $_GET['registro_lista_nacimiento_year'];
$pais = $_GET['registro_lista_pais'];
$ciudad = $_GET['registro_lista_ciudad'];
$profesion=$_GET['registro_lista_profesion'];
$direccion= $_GET['registro_direccion'];

El problema que presento es el siguiente:
Notice: Undefined index: registro_nombres on line 20 haciendo referencia al codigo anterior resaltado de rojo... y así
con las demás líneas inferiores.

Hago 3 aclaraciones:
1.- En php.ini tengo global_register=off
2.- Yo inicio cada codigo php con <?php y no con <? solamente
3.- Usé la función isset (); con la cual ya no generó ningún error, pero esa asignación la uso para que el usuario no vuelva a ingresar toda la informacion al formulario nuevamente, y al usar isset(); no me presentó nada de lo que ingresó antes.

Gracias y disculpen si fueron muchas palabras, espero puedan ayudarme