Error en formulario php al enviarlo a una dirección de correo electrónico

Me gustaría que me ayudarais, en mi página tengo un formulario php y me da este error cuando voy a enviarlo a una dirección de correo electrónico:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/vol2/zobyhost.com/zoby_6953628/htdocs/send.php3 on line 24
No sé si al tener un servidor gratis no tengo esta función disponible o tengo un error en el php, pero que tenga un error me parece muy raro porque este mismo formulario lo tenía en un servidor de pago y funcionaba perfectamente. En el servidor que tengo ahora mismo alojada la web es zobyhost y pone que tiene activada la función sendmail(), pero como he dicho antes no funciona este código y en el servidor strato de pago si funcionaba perfectamente.
Agradecería muchísimo una ayuda por favor ya que se muy poco de php
Aquí os dejo de todas formas el php
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<style>
<!--
.style1 {
 font-family: "Trebuchet MS";
 font-size: 12px;
}
-->
</style>
</head>
<body>
<?
if (isset($email)){
# la dirección electrónica a la que enviar el email
$target="[email protected]";
$subject="FORMULARIO";
    $headers = "From: " . $email;
    $headers .= "<" . $_POST[$email] . ">\r\n";
    $headers .= "Reply-To: " . $_POST[$email];
mail($target,$subject,"Nombre:".$Nombre."\nLocalidad:".$Localidad."\nemail:".$email."\nComodidad:".$Comodidad."\nMejoraria".$Mejoraria."\nOtrasºmejoras:".$Otrasºmejoras."\nClaseºpeliculas:".$Claseºpeliculasº."\nOtrasºpeliculas:".$Otrasºpeliculas."\nCalidadProductosBar:".$CalidadProductosBar."\nVariedadBar:".$VariedadBar"\nComentario:".$Comentario."\nValoracion:".$Valoracion,$headers);
echo '
<meta http-equiv="refresh" content="0;URL=enviado.htm" />
';
}else{
echo "ingrese un mail valido";
}
?>
</body>
</html>

1 Respuesta

Respuesta
1
Haz una variable nueva que sea $cuerpo, y metes ahí tdo el contenido, y luego en la función mail rescatas ese valor, creo que te está dando error ahí mismo
Hola experto soy yo otra vez, mira hice lo que me dijiste y creo que lo hice bien, aquí te dejo el código para que lo veas, pero nada, sigue sin dejarme mandar nada, ahora me sale ingrese un email válido que es lo que yo tengo en la función cuando no se ha podido enviar pero no da ningún error ni nada, esto mismo me pasaba en iespana cuando tenia la web alojada hay, ya que esta gente tiene la función mail() desactivada, pero en donde la tengo ahora (zobyhost)pone sendmail activado.. la verdad esto me tiene loco. Mira te voy a poner aquí las características de el servidor, para a ver si es algo del servidor o la función mail que sigue sin estar bien, te agradecería mucho que le echaras un vistazo.
Función mail modificada:
<?
if (isset($email)){
# la direccin electrnica a la que enviar el email
$target="[email protected]";
$subject="FORMULARIO";
    $headers = "From: " . $email;
    $headers .= "<" . $_POST[$email] . ">\r\n";
    $headers .= "Reply-To: " . $_POST[$email];
$cuerpo = "Nombre:".$Nombre."\nLocalidad:".$Localidad."\nemail:".$email."\nComodidad:".$Comodidad."\nMejoraria".$Mejoraria."\nOtrasmejoras:".$Otrasmejoras."\nClasepeliculas:".$Clasepeliculas."\nOtraspeliculas:".$Otraspeliculas."\nCalidadProductosBar:".$CalidadProductosBar."\nVariedadBar:".$VariedadBar."\nComentario:".$Comentario."\nValoracion:".$Valoracion; 
mail($target,$subject,$headers,$cuerpo);
echo '
<meta http-equiv="refresh" content="0;URL=enviado.htm" />
';
}else{
echo "ingrese un mail valido";
}
?>
Características del servidor zobyhost:
Email Settings
POP3 user name:
kiju581228
POP3 host name:
mail.zobyhost.com
POP3 port:
520
SMTP server:
Available on premium only - Upgrade
PHP Sendmail:
Enabled
Debes utiilzar la funcionalidad sendmail, que no es la función mail de PHP. Consulta en el hosting como enviar nu mail, estoy seguro que deben de mostrarte ejemplos de como hacerlo
Hola experto voy a intentar hacer lo que me dijiste con la funcionalidad sendmail, que como me digites no es lo mismo que la función mail. Mira mi última pregunta ya que de php no se casi nada y la web donde la tengo alojada ni responden a las preguntas. Podrías por favor decir que es lo que puede estar fallando en el servidor zobyhost para no poder enviar correos con la función mail() ya que no tengo ni idea de la funcionalidad sendmail, es porque ¿no tengo activada la función mail? O al tener el servidor zobyhost gratis ¿esta desactivada como te puse en el otro email SMTP server:
Available on premium only - Upgrade? Ya que por lo que tengo entendido cuando se manda un email primero va al servidor smtp en este caso el mio, este servidor lo remite al servidor donde pertenece el la dirección de correo y ahí se almacena el el pop3 de del destinatario y al yo ¿al no tener el smtp pues la función mail no funciona?Espero haberme explicado bien y gracias por tu tiempo y ayuda..
Gracias por todo
En los servidores gratis, la función mail suele estar desactivada, es en la de pago donde puedes usarla.
Te dan la opci´n sendmail precisamente por eso, es menos fiable, pero en cada servidor se configura de una forma, segur que en su página o el foro explican como usarlo. No te puedo concretar porque en cada server es diferente

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas