Foros del Web » Programando para Internet » PHP »

Necesito algo mas completo.

Estas en el tema de Necesito algo mas completo. en el foro de PHP en Foros del Web. Saludos amigos, he estado localizando informacion acerca del header redireccinamiento, pero no enuentro en los post algo mas claro y se que para algunos de ...
  #1 (permalink)  
Antiguo 02/01/2004, 19:06
 
Fecha de Ingreso: noviembre-2002
Mensajes: 112
Antigüedad: 15 años
Puntos: 0
Necesito algo mas completo.

Saludos amigos, he estado localizando informacion acerca del header redireccinamiento, pero no enuentro en los post algo mas claro y se que para algunos de uds es bien facil ...

Si tengo un formulario de 3 campos en un archivo, como le haria con algun ejemplo que en otro archivo de php pueda indicarle al usuario los datos que le hacen falta y que espere unos minutos y posteriormente se regrese a la pagina del formulario sin perder los datos que originalmente el uusario habia introducido?....

POr favor necesito algun codigo porque vengo batallando hace varios dias, ya vi los post pero no hay alguno que me recupere los datos anteriores y no se como aplicarlo.

Gracias
  #2 (permalink)  
Antiguo 03/01/2004, 00:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
mm Es que lo que planteas no sólo se hace con "header()" que te serviría para redireccionar .. sino con cookies/sesiones o propagando esos datos (variables) por el URL

Lo más simple sería propagar esas X varibles en el URL

formulario.php
Código PHP:

// Si hay errores se presenta el mensaje. El hecho lo define una variable de control/parámetro: "codigo"
if (isset($_GET['codigo'])){
   echo "Hay un error o bla bla bla ...";
}
<form action="procesar.php" method="POST">

<input type="text" name="campo1" value="<? echo $_GET['campo1'?>">
<input type="text" name="campo2" value="<? echo $_GET['campo2'?>">

<input type="submit" name=" enviar " value="submit">
</form>
procesar.php
Código PHP:
<?
// validas tus datos $_POST['campo1'] .. $_POST['campo2'] como lo tengas que hacer ...

if (...){   
  
// Si no se cumplen tus validaciones de datos/etc .. redireccionas al formulario .. pasando las variables que llegaron aquí .. pero por el URL en modo GET.
  
header("location: formulario.php?estado=error&campo1=".$_POST['campo1']."&campo2=".$_POST['campo2']);
exit;
} else {
// la validación fué correcta .. haz lo que tengas que hacer.
}
?>
Los mensajes de error/exito debes presentarlos en el script que tiene el formulario o en cualquier otra .. pero NUNCA en la que hagas el header() que es donde validas o procesas esos datos. (sino tendrás problemas con "cabeceras enviadas .. bla bla".)

Esa variable "codigo" en el formulario.php tan sólo se vé si exite o no para mostrar el mensaje de error genérico .. Si te gestionas esa variables con tus própios valores podrías mostrar cosas como "falta el dato tal .. o el otro . o todos .. o bla bla".

Lo ideal para estos casos es usar sesiones .. Pero la técnica es igual: formulario -> procesa/valida .. si no es corecto -> redireccionar hacia otra(s) páginas y previamente guardar tus variables del formulario en una cookie/sesión o bien propagarlas "a mano" por el URL como en ejemplo que puse.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 03/01/2004 a las 00:07
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 22:28.