Foros del Web » Programando para Internet » PHP »

Problemas con el formulario

Estas en el tema de Problemas con el formulario en el foro de PHP en Foros del Web. Buenas tardes; Estoy desarrollando un sitio web y dentro de el puse un formulario para que sea enviado a una cuenta de correo, el problema ...
  #1 (permalink)  
Antiguo 08/02/2007, 22:16
 
Fecha de Ingreso: julio-2006
Mensajes: 29
Antigüedad: 17 años, 9 meses
Puntos: 0
Exclamación Problemas con el formulario

Buenas tardes;

Estoy desarrollando un sitio web y dentro de el puse un formulario para que sea enviado a una cuenta de correo, el problema es que el servidor del hospedaje no tenia un servidor smtp entonces me puse en contacto con ellos y me mandaron unos archivos para poder mandar el formulario a una cuenta de correo. Este es el script:

<?php
// Funciona para Windows y UNIX. Formato Texto Plano
// El archivo class.smtp.inc no necesita cambios.
// El archivo PHP es el que debe de ser modificado para recibir
// las variables de la forma en HTML.

include('class.smtp.inc');
header('Content-Type: text/plain');


// Poner todas las variables HTML sobre la variable $message.

$hoy = date ("d F Y");

$message = "\t\t\t$hoy\n\n";
$message = $message . "Nombre: $nombre\n\n";
$message = $message . "E-mail: $email\n\n";
$message = $message . "Ciudad: $ciudad\n\n";
$message = $message . "Telefono: $tel\n\n";
$message = $message . "Comentarios:\n";
$message = $message . "$comentarios\n\n";


/***************************************
** Setup some parameters which will be
** passed to the smtp::connect() call.
***************************************/
$params['host'] = 'smtp.xxx.xx.mx'; // No cambiar
$params['port'] = 25; // The smtp server port
$params['helo'] = 'xxx.xx.mx'; // Su dominio.
$params['auth'] = TRUE; // Whether to use basic authentication or not
$params['user'] = '[email protected]'; //Username
$params['pass'] = 'XXXXXX'; // Password for authentication

/***************************************
** These parameters get passed to the
** smtp->send() call.
***************************************/

$send_params['recipients'] = array('[email protected]'); //
$send_params['headers'] = array(
'From: "[email protected]" <[email protected]>', 'To: [email protected]', 'Subject: Datos del Formulario ICCPS');

$send_params['from'] = '[email protected]'; // This is used as in the MAIL FROM: cmd
// It should end up as the Return-Path: header
$send_params['body'] = $message; //Message // The body of the email


/***************************************
** The code that creates the object and
** sends the email.
***************************************/


if(is_object($smtp = smtp::connect($params)) AND $smtp->send($send_params)){
Header("Location:xxx.htm");
exit;

// Any recipients that failed (relaying denied for example) will be logged in the errors variable.
//print_r($smtp->errors);

}else{
Header("Location: xxx.htm");
exit;

// The reason for failure should be in the errors variable
//print_r($smtp->errors);
}

?>


El problema es que cuando quiero validar que minino rellenen los campos de nombre y email del formulario, sale el mensaje dentro de un archivo .php quizas estoy poniendo mal las condiciones, estas son las condiciones y las ponga antes de poner las varias del html

if($nombre=="")
{
echo "Necesitas teclear tu nombre completo, da un click en el botón de Atrás";
exit();
}
if($email=="")
{
echo "Necesitas teclear tu dirección de correo electrónico, da un click en el botón de Atrás";
exit();
}

Y una cosa mas, quisiera que me llegarà el correo con los encabezados nombre y email de la persona que envio el formulario, por que me llegan con el nombre de [email protected] que es la cuenta donde llegan los mensajes.

De antemano muchas gracias.
  #2 (permalink)  
Antiguo 09/02/2007, 02:09
 
Fecha de Ingreso: enero-2002
Mensajes: 4.159
Antigüedad: 22 años, 3 meses
Puntos: 22
Re: Problemas con el formulario

De casualidad el hosting no es Prodigy?

Anida los if

if($nombre=="")
{
echo "Necesitas teclear tu nombre completo, da un click en el botón de Atrás";
exit();
}else{
if($email=="")
{
echo "Necesitas teclear tu dirección de correo electrónico, da un click en el botón de Atrás";
exit();
}else{
// AQUI IRAN TOOOOOODAS LAS INSTRUCCIONES PARA ENVIAR EL CORREO
}
}



Saludos.

Última edición por Elalux; 09/02/2007 a las 02:15
  #3 (permalink)  
Antiguo 09/02/2007, 09:03
 
Fecha de Ingreso: julio-2006
Mensajes: 29
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: Problemas con el formulario

Asi es el hosting es con Prodigy, ya hice lo que me dijiste y efectivamente ya funciono muchas gracias.

Solo falta que ahora me llegue el correo con el nombre y correo de la persona que lo envia en el encabezado, por que ahorita me llega con mi mismo nombre y cuenta de mi correo.

Muchas gracias


Cita:
Iniciado por Elalux Ver Mensaje
De casualidad el hosting no es Prodigy?

Anida los if

if($nombre=="")
{
echo "Necesitas teclear tu nombre completo, da un click en el botón de Atrás";
exit();
}else{
if($email=="")
{
echo "Necesitas teclear tu dirección de correo electrónico, da un click en el botón de Atrás";
exit();
}else{
// AQUI IRAN TOOOOOODAS LAS INSTRUCCIONES PARA ENVIAR EL CORREO
}
}



Saludos.
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 23:42.