Foros del Web » Programando para Internet » PHP »

Formulario en PHP

Estas en el tema de Formulario en PHP en el foro de PHP en Foros del Web. Hola, es sorprendente la cantidad de información que hay aquí para todos. Tengo una consulta y agradecería que me ayuden. Tengo este pequeño programa en ...
  #1 (permalink)  
Antiguo 08/06/2008, 19:04
Avatar de Stefan  
Fecha de Ingreso: junio-2008
Mensajes: 44
Antigüedad: 15 años, 10 meses
Puntos: 0
Mensaje Formulario en PHP

Hola, es sorprendente la cantidad de información que hay aquí para todos.

Tengo una consulta y agradecería que me ayuden.

Tengo este pequeño programa en PHP para enviar emails a traves del celular (por eso el código es tan simple):

Código:
<?

$nombres = $_POST['nombres'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];

$cuerpo = "
De: $nombres \n\r
Email: $email \n\r
Mensaje: \n\r
$mensaje
";

if ( mail( '[email protected]','Mensaje de IndicePeru.com',$cuerpo ) ) {
header( 'Location: http://www.indiceperu.com/mobile/thankyou.html' );
}

?>
Pero tengo un problema con las últimas tres lineas, el programa despues de enviar el email no me redirecciona a la página thankyou.html

Saben ¿cuál podría ser el problema? ¿hay algún otro código PHP que podría usar?

Saludos
__________________
INDICEPERU.COM → ANÁLISIS TÉCNICO CON BLOOMBERG Y REUTERS.

Última edición por Stefan; 30/08/2008 a las 09:16
  #2 (permalink)  
Antiguo 08/06/2008, 19:29
 
Fecha de Ingreso: mayo-2006
Mensajes: 178
Antigüedad: 17 años, 11 meses
Puntos: 7
Respuesta: Formulario en PHP

Por alguna razon, no te esta entrando al IF.

Tenes habilitada la funcion mail() en el servidor?
  #3 (permalink)  
Antiguo 08/06/2008, 19:43
 
Fecha de Ingreso: mayo-2008
Mensajes: 23
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Formulario en PHP

Si no me equivoco la función header debe ser invocada al principio del script, pero te tendría que mostrar un error en ese caso (error: headers already sent..... algo así) también puede ser que el este configurado el php.ini para que no muestre los errores. Yo probaría con otra forma de redireccionar:

Con javascript:
Código HTML:
<SCRIPT LANGUAGE="JavaScript">window.location="http://www.indiceperu.com/mobile/thankyou.html"</SCRIPT> 
con html:

Código HTML:
<META HTTP-EQUIV="refresh" content="0.01; URL=http://www.indiceperu.com/mobile/thankyou.html"> 
Observación: para la redirección con php yo uso la palabra "location" en minúscula, no creo que sea eso, pero lo comento.

Un saludo
  #4 (permalink)  
Antiguo 08/06/2008, 21:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Formulario en PHP

la función header() no necesariamente debe ir al comienzo.... ya que no tendría sentido

al parecer tu código esta muy bien escrito, solo que puede ser que falle la función mail() o de plano, no este habilitada... u ocurra algún otro error interno que por ende, no te devuelve el true que esperas en la condición...

igualmente, convendría que habilites todos los mensajes de error, haber si algo se pilla por ahí

Código PHP:
<?php
error_reporting
(E_ALL);

// tu demas codigo
?>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 10/06/2008, 09:42
Avatar de Stefan  
Fecha de Ingreso: junio-2008
Mensajes: 44
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Formulario en PHP

Cambié el código y ahora sí muestra una pantalla de confirmación aceptable:

Código:
<?

$nombres = $_POST['nombres'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];

$cuerpo = "
De: $nombres \n\r
Email: $email \n\r
Mensaje: \n\r
$mensaje
";

mail ( '[email protected]', 'Mensaje de IndicePeru.com', $cuerpo, 'From $nombres' ) or die ( 'Su mensaje no se envio.' );

echo "<p>Gracias por su visita.</p>";

?>
Lo que ocurre es que cuando se abre un formulario desde una celular, al momento que lee el archivo php no vuelve al formulario de inicio, entonces tengo que poner la confirmación en el mismo archivo php.

Lo malo es que ahora no me sale el From $nombres.
__________________
INDICEPERU.COM → ANÁLISIS TÉCNICO CON BLOOMBERG Y REUTERS.

Última edición por Stefan; 30/08/2008 a las 09:17
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 01:28.