Foros del Web » Programando para Internet » PHP »

problemas con botón volver

Estas en el tema de problemas con botón volver en el foro de PHP en Foros del Web. Antes de nada, hola a todos Estoy haciendo una página en la que puedes encargar cuadros; la cosa es que eliges el cuadro y al ...
  #1 (permalink)  
Antiguo 29/06/2004, 04:42
 
Fecha de Ingreso: junio-2004
Mensajes: 5
Antigüedad: 13 años, 5 meses
Puntos: 0
Pregunta problemas con botón volver

Antes de nada, hola a todos

Estoy haciendo una página en la que puedes encargar cuadros; la cosa es que eliges el cuadro y al pinchar en comprar vas a un formulario que te pide unos datos, si algún dato está vacío te lleva a una página que te dice que has de rellenarlos todos y en la que hay un enlace para volver al formulario; hasta aquí todo bien, el problemas es que al pinchar en volver y regresar al formulario cuando rellenas los datos (o aunque no los rellenes) y pinchas en enviar me sale la página en php pero viéndose el código, es decir, no me la ejecuta, alguien me podría decir cuál puede ser el problema para que falle al dar a volver. Si doy atrás en el explorador no me pasa.

Muchas gracias de antemano
  #2 (permalink)  
Antiguo 29/06/2004, 09:13
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Y .. esa pàgina que redireccionas es .php ? ..
usastes <? para indicar que ahí tienes tu código php y .. su cierre ?>

Podrías poner el código que usas (el link y la página que apuntas).

Un saludo,
  #3 (permalink)  
Antiguo 30/06/2004, 03:20
 
Fecha de Ingreso: junio-2004
Mensajes: 5
Antigüedad: 13 años, 5 meses
Puntos: 0
Muchas gracias por responderme, te pongo aquí el código de la página php a la que manda el formulario:


<?

if (($cuadro == "") && ($nombre == "") && ($direccion == "") && ($email == "") && ($telefono == "")) {
header("Location: http://localhost/galeria/errores/errorform.htm");
exit;
}

$cuadro= $_POST[cuadro];
$nombre =$_POST[nombre];
$direccion =$_POST[direccion];
$email= $_POST[email];
$telefono= $_POST[telefono];

$msg = "ESTOS SON LOS DATOS RECIBIDOS:\n";
$msg .= "Nombre: $nombre\n";
$msg .= "Dirección: $direccion\n";
$msg .= "E-Mail: $email\n";
$msg .= "Teléfono: $telefono\n";
$msg .= "Cuadro Elegido: $cuadro\n\n";

$to = "[email protected]";
$subject = "Comprar cuadro";
$mailheaders = "From: $nombre <> \n";


mail($to, $subject, $msg, $mailheaders);

?>



<html>
<head>
<title>INFORMACIÓN ENVIADA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFCC">
<H1>Un email ha sido enviado con los siguientes datos:</H1>

<P><strong>Su nombre:</strong><br>
<? echo "$nombre"; ?>

<P><strong>Su Dirección :</strong><br>
<? echo "$direccion"; ?>

<P><strong>Su E-Mail :</strong><br>
<? echo "$email"; ?>

<P><strong>Su Teléfono:</strong><br>
<? echo "$telefono"; ?>

<P><strong>Cuadro Elegido:</strong><br>
<? echo "$cuadro"; ?>
<P align="right">&nbsp;
</body>
</html>


como has visto si no se rellena algún campo te redirecciona a una página de error y en esa página (htm) hay un vínculo para volver al formulario (htm) que al rellenar completamente te vuelve a mandar al código que te he puesto. El error viene al usar el formulario desde el vínculo de la página de error, si lo hago dando atrás en el explorador va bien.
No sé si me he explicado bien, muchísimas gracias por tu ayuda
  #4 (permalink)  
Antiguo 30/06/2004, 03:30
Avatar de yeta  
Fecha de Ingreso: enero-2004
Mensajes: 148
Antigüedad: 13 años, 10 meses
Puntos: 0
if (($cuadro == "") && ($nombre == "") && ($direccion == "") && ($email == "") && ($telefono == "")) {
echo "Rellena todos los campos";
}


porque no pones eso¿?
  #5 (permalink)  
Antiguo 30/06/2004, 03:30
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
¿Podrías poner el código de http://localhost/galeria/errores/errorform.htm?. De todas maneras esto parece cosa de brujas
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #6 (permalink)  
Antiguo 30/06/2004, 03:33
Avatar de yeta  
Fecha de Ingreso: enero-2004
Mensajes: 148
Antigüedad: 13 años, 10 meses
Puntos: 0
una pregunta sobre esta condición:

Código PHP:
if (($cuadro == "") && ($nombre == "") && ($direccion == "") && ($email == "") && ($telefono == "")) {
header("Location: http://localhost/galeria/errores/errorform.htm");
exit;

eso quiere decir que si todos se quedan vacios redireccione a una página, o que si alguno de ellos (como mínimo) se queda vacío redireccione¿? si en lugar de && pusiera OR que pasaria?
  #7 (permalink)  
Antiguo 30/06/2004, 03:41
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
En esa condición si todos están en blanco se redirecciona. Para que redireccionase cuando uno al menos está en blanco sería con ||.

Buena observación yeta
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #8 (permalink)  
Antiguo 30/06/2004, 03:47
Avatar de yeta  
Fecha de Ingreso: enero-2004
Mensajes: 148
Antigüedad: 13 años, 10 meses
Puntos: 0
también funcionaría el OR verdad? es que yo creo que he utilizado el OR para condiciones como estas...y ha funcionado bien
  #9 (permalink)  
Antiguo 30/06/2004, 03:51
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
de hecho es que tendría que usar el OR porque en cuanto uno de los campos esté rellenado según la condición que está puesta no haría la redirección.
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #10 (permalink)  
Antiguo 30/06/2004, 04:00
Avatar de yeta  
Fecha de Ingreso: enero-2004
Mensajes: 148
Antigüedad: 13 años, 10 meses
Puntos: 0
mmmm....antes no entendí bien lo que querías decir...pero ahi va mi propuesta:
si pones todo en un mismo archivo?me refiero a que primeramente se vea el formulario, al enviarlo, lo procese en el mismo archivo, y que despues segun lo que pase muestre una cosa u otra (en el caso de que alguno de los campos este vacío pues saldría un mensaje de error, y con el formulario de nuevo abajo...en el caso de que funcione, yo aprovecharia la condicion que hiciste al principio para mostrar el codigo de que hay a partir de <html>)
entiendes lo que quiero decir?
a los demas que le parece?
ah por cierto cambia el && por el OR
  #11 (permalink)  
Antiguo 30/06/2004, 09:28
 
Fecha de Ingreso: junio-2004
Mensajes: 5
Antigüedad: 13 años, 5 meses
Puntos: 0
Muchas gracias a todos antes de nada; living, aquí te pongo el código que me pedías de la página de error:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFCC">
<div align="center">
<p><font size="4" face="Arial"><strong>POR FAVOR, RELLENE TODOS LOS CAMPOS</strong></font></p>
<p><font size="3" face="Verdana"><strong><a href="file:///C|/apache/Apache2/htdocs/galeria/cdisp/comprar/comprar181.htm" target="_self">Volver</a></strong></font></p>
</div>
</body>
</html>


Esta página como veis me redirige al formulario al pulsar volver, pero luego el formulario no va, me estoy volviendo loca!!! si el código php se procesa bien una bien, debería procesarse bien la segunda vez, pero me lo muestra como en bloc de notas. Gracias otra vez por vuestra ayuda.
¡ah! y gracias por la observación del OR yeta, no me había dado ni cuenta
  #12 (permalink)  
Antiguo 30/06/2004, 09:40
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 13 años, 6 meses
Puntos: 2
Ya sé donde está el error, estás llamando a tu página con un path absoluto, debes llamarla apartir del document root. Deberías poner esto:

href="/galeria/cdisp/comprar/comprar181.htm"

en vez de :

href="file:///C|/apache/Apache2/htdocs/galeria/cdisp/comprar/comprar181.htm"
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #13 (permalink)  
Antiguo 30/06/2004, 14:18
Avatar de yeta  
Fecha de Ingreso: enero-2004
Mensajes: 148
Antigüedad: 13 años, 10 meses
Puntos: 0
jajajaj tanto lio para que sea eso...jajajajajaja
bueno, pero al menos que no se te olvide cambiar los && por OR
;)
  #14 (permalink)  
Antiguo 30/06/2004, 16:37
Avatar de The_Dark_Roy  
Fecha de Ingreso: enero-2004
Mensajes: 218
Antigüedad: 13 años, 11 meses
Puntos: 0
asi seria mejor

Código PHP:
<?

if ((empty($cuadro ) || empty($nombre) || empty($direccion) || empty($email) || empty($telefono)) {
header("Location: http://localhost/galeria/errores/errorform.htm");
exit;
}
?>
yo lo hago asi si estan vacio cualquier campo redirecciono
__________________
ojala te hayas quitado la venda

http://www.surire.cl
http://www.uta.cl
  #15 (permalink)  
Antiguo 01/07/2004, 03:55
 
Fecha de Ingreso: junio-2004
Mensajes: 5
Antigüedad: 13 años, 5 meses
Puntos: 0
J...! qué fallo más tonto. Hago los documentos html con Dreamweaver y siempre me pasa lo mismo, incluso con los enlaces a las fotos y cosas por el estilo; muchísimas gracias a todos por vuestra ayuda
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 12:46.