Problema con formulario html y php

Chaktet

Buenas, necesito crear un simple formulario pero he tenido un problemilla a la hora final, os lo expondre lo mas facil posible con el codigo y con captura de pantalla para ver si me podeis ayudar como podais. Gracias por adelantado.

Codigo HTML
Codigo PHP

Captura de pantalla clickando en el boton enviar.
http://prntscr.com/2qgidu

Al darle click se queda el codigo php tal y como estaba XDDDDD

http://prntscr.com/2qgiho

Porfavor cualquier ayuda servira de muchisimo. Gracias.

kraneok

Pero, ¿ cual es el problema ?. Explícate un poco mejor.

1 respuesta
Chaktet

#2 Al darle al boton de enviar se tendria que enviar el formulario completo a mi email, en vez de eso, sale el mensaje de procesar._.

1 respuesta
kraneok

#3 Y no será que el PHP es .HTML? en vez de .PHP, por eso lo lee como texto plano.

1 respuesta
Chaktet

#4 http://prntscr.com/2qgqu2

1 respuesta
kraneok

#5 Y lo tienes en un servidor web con que tenga instalado php, ejemplo xampp, wampp, etc.

1 1 respuesta
babri

<?php
$remitente = "Aqui remitente" ;
$destino = "Aqui tu email" ;
$asunto = "Aqui asunto" ;
$mensaje = "Aqui mensaje";

mail($destino, $asunto, $mensaje) or die ("No se ha podido enviar tu mensaje. Ha ocurrido un error") ;

echo "<p>Tu mensaje a sido enviado con este contenido:</p>" ;
?>

Prueba eso a ver que tal.

Chaktet

#6 Lo tengo en mi ordenador ahora mismo.

1 respuesta
babri

#8 estas usando xamp o algo similar para emule servidor?

1 respuesta
Chaktet

#9 No xD

1 respuesta
babri

#10 normal que no funcione :P

1 respuesta
Chaktet

#11 Lo acabo de subir a mi hosting
http://campusxarblanca.es/contacto.html pero no me enviaron nada de nada, ya no da error al darle a enviar pero pasa eso, que no se envia a mi correo xD

Tunnecino

Primero, si no tienes un servidor web rulando en tu PC, y entras a través de un vhost creado en el, obviamente no va a funcionar ningún script php que arranques, por que no está php arrancado.

$mensaje = "INSCRIPCIÓN CAMPUS: \n Nombre: $nombre \n Apellido: $appelidos \n DNI: $dni \n Dirección: $direccion \n Municipio: $municipio \n Fecha de nacimiento: $fechanacimiento \n Seguridad Social: $seguridadsocial";

if($mailsend = mail('habbo-maraville@hotmail.es', 'Inscripción al Campus', $mensaje)) {
	echo '<p>Gracias por rellenar el formulario</p>';
}

Por cierto... podrías haber subido un puto pastebin, no que he tenido que escribir todo a pelo por que es una imagen... xD

1 respuesta
NickNack

Pero... como envias el correo sin un servidor SMTP o POP3 de por medio? La funcion mail() puede pero si no recuerdo mal necesitas que tu proveedor tenga servicio y tenerlo configurado etc.. A mi me falta algo en el código. (OJO que puede que sea yo el que se equivoque xD)

Si no tienes y quieres algo alternativo en PHP:
Echale un ojo a PHPMailer. Podras usar una cuenta de Gmail a modo de servidor SMTP y enviar correos a donde quieras (puedes falsear las cabeceras para que parezca que no envias desde esa direccion).

<?php

$mail = new PHPMailer(true);

//Send mail using gmail
if($send_using_gmail){
    $mail->IsSMTP(); // telling the class to use SMTP
    $mail->SMTPAuth = true; // enable SMTP authentication
    $mail->SMTPSecure = "ssl"; // sets the prefix to the servier
    $mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
    $mail->Port = 465; // set the SMTP port for the GMAIL server
    $mail->Username = "your-gmail-account@gmail.com"; // GMAIL username
    $mail->Password = "your-gmail-password"; // GMAIL password
}

//Typical mail data
$mail->AddAddress($email, $name);
$mail->SetFrom($email_from, $name_from);
$mail->Subject = "My Subject";
$mail->Body = "Mail contents";

try{
    $mail->Send();
    echo "Success!";
} catch(Exception $e){
    //Something went bad
    echo "Fail - " . $mail->ErrorInfo;
}

?>
1 4 respuestas
Chaktet

#13 No se me ocurrio, perdona xDD

http://campusxarblanca.es/contacto.html

Tengo el dominio y el host hospedado en one.com pero me parece que no me permite hacer eso y lo necesito par el domingo..


Tengo una duda, se podria hacer para que los formularios al rellenarlos se cree automaticamente en el hosting un documento txt con los datos que han puesto las personas? de ser así, yo mismo podria encargarme cada dia de enviarle los datos personalmente a la persona a su correo.

kraneok

#14 De todos modos si mail no encuentra una configuración tiene una por defecto.

xuse92

#1 una vez tengas arreglado el html+php acostúmbrate a poner el css en una hoja de estilos a parte, en este caso son 5 líneas pero cuando tengas 23242 disfrutarás

1
Tunnecino

De todas formas, como dice #14 tira de SMTP, ya sea del hosting, o Mailjet o Amazon SeS, que son servicios que si no vas a enviar muchos correos, te sale gratuito.

1 respuesta
Chaktet

#18 Vale acabo de registrarme en mailjet y todo, pero al parecer el formulario sigue sin funcionar, cosa que no consigo entender mucho vaya xD

http://prntscr.com/2ql33h

Eso donde lo tengo que poner, que yo sepa si cambio las dns se me desconfigura toda la pagina ._.

Chaktet

Listo. Se puede cerrar el post, gracias a todos lo consegui ^^

raid

#14 Hostia, que librería más chula no???

Yo usaba la función mail normal con mi smtp, pero este de gmail me gusta, me gusta...

naete

Muchos hostings te capan el envío de mails, mira si el tuyo los permite. Yo tuve ese problema mi primera vez con los mails xD

raid

#14 Oye, que lo he probado y va genial para el caso de que no tengas smtp en tu hosting.

No me lo he mirado mucho, pero si quiero que llegue un email formateado en html cómo podría hacerlo?

Quiero decir... que debo introducir en $mail->Body =
Quizá empezar con una cabecera html?
Es que me ha dado por poner

$mail->Body = "hola juapo<br>que tal?";

y me ha llegado escrito tal cual.

Usuarios habituales

  • raid
  • naete
  • Chaktet
  • Tunnecino
  • xuse92
  • kraneok
  • babri