Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/12/2010, 03:58
Avatar de Gambinoh
Gambinoh
 
Fecha de Ingreso: diciembre-2010
Mensajes: 348
Antigüedad: 13 años, 5 meses
Puntos: 11
Alternativas a die() en este código

Se me ocurre hacer $mail = "funcion mail"; y luego en lugar de die() poner $mail = null; pero claro resulta que si no declaro antes la variable $mail esta no tiene un valor asignado y si la declaro se enviaría el formulario sin comprobarse si están vacíos los campos.

Otro problema que tengo es que cuando alguien escribe una dirección de correo sin la @, o sea un formato incorrecto, me sale un warning y creo que es porque no he añadido a la lista de escepciones ese caso invalidando el envio del mail como respuesta y añadiendo un mensaje.

Cita:
<?php
if (isset($_POST['submit']))
{

$nombre = $_POST["nombre"];
$remitente = $_POST["email"];
$asunto= $_POST["asunto"];
$mensaje= $_POST["mensaje"];

$mensaje = wordwrap($mensaje, 70);

$encabezados = "From: $remitente" . "\r\n" . "Reply-To: $remitente" . "\r\n" . 'Content-type: text/plain; charset=iso-8859-1';

if(empty($remitente)){
die();
} elseif (empty($mensaje)){
die();
} elseif (empty($asunto)) {
die();
} elseif (empty($nombre)) {
die();
} else {
$destino = "[email protected]";
}

mail($destino, $asunto, $mensaje, $encabezados) or die ("Mensaje no enviado");

echo "Mensaje enviado";
}
?>