enviar correos desde un formulario adentro de un html

Iniciado por _vicho_, 11 Enero 2012, 03:10 AM

0 Miembros y 1 Visitante están viendo este tema.

_vicho_

hola quiero que el usuario que vea mi pagina me mande un correo desde la pagina sin meterse a nada extra, estuve checando en internet pero solamente me dan esto
         [codigo]
<?php
$destino ="soporte@disegrafweb.com.mx";
$asunto = "asuntocaja";
$cabeceras = "Content-type: text/html";
$cuerpo ="cuerpocaja<br>
Los datos enviados son los siguientes:<br>
<b>Nombre:</b>$nombre<br>
<b>email:</b>$email<br>
Y envio el siguiente comentario: <hr>
<pre>
$comentario
</pre>";

mail($destino,$asunto,$cuerpo,$cabeceras);

echo "Se ha enviado el mensaje correctamente";
?>
[/codigo]

estoy muy nobato en php y disculpen si es tonta la pregunta q realizare pero en ese php donde esta el boton enviar correo????

muchas gracias por sus respuestas hasta pronto

#!drvy

Hola,

No he entendido nada de lo que has dicho.

Quieres que nada mas alguien entre a tu pagina, te llegue un correo ? u otra cosa ? ?


Saludos

_vicho_

exactamente, que el visitante si es q quiere mandarme un correo lo pueda hacer desde esa misma pagina, sin salirse de ahi amenos de q el lo desee

2Fac3R

Pues create un formulario donde el visitante ponga los datos que necesita mandarte por correo.

Aprende un poco de HTML y PHP (busca sobre la funcion mail() )

No esperes que se te de el code hecho sin poner nada de tu esfuerzo, no creo que nadie lo haga.
Zalu2
Escuela de Hackers & Programación. http://ihackndev.blogspot.com/

_vicho_

hola si se de html 2Fac3R pero no tengo idea de php si e visto ese codigo
y tengo ejemplos
<?
mail("pepito@suweb.com,maria@suweb.com","asuntillo","Este es el cuerpo del mensaje")
?>

y tambien ya ise el formulario del correo para que pongan sus datos y el contenido del correo pero como ago que ese codigo en php se envie y que onda con el boton enviar eso es lo que no se como va, no pido el scrip ya echo sino un apollo de por donde empezar  :-(

2Fac3R

Cita de: _vicho_ en 12 Enero 2012, 03:12 AM
hola si se de html 2Fac3R pero no tengo idea de php si e visto ese codigo
y tengo ejemplos
<?
mail("pepito@suweb.com,maria@suweb.com","asuntillo","Este es el cuerpo del mensaje")
?>

y tambien ya ise el formulario del correo para que pongan sus datos y el contenido del correo pero como ago que ese codigo en php se envie y que onda con el boton enviar eso es lo que no se como va, no pido el scrip ya echo sino un apollo de por donde empezar  :-(

Si supieras HTML sabrias que "el boton" en enviar se hace con HTML dentro del formulario asi:

Código (html4strict) [Seleccionar]
<form action="correo.php" method="POST">
<input type="submit" value="ENVIAR!">
</form>


PHP solo procesa los datos, en este caso enviara con la funcion mail(), lo que tienes que leer es sobre los metodos de envio de datos
Código (php) [Seleccionar]
$_POST y $_GET (en este caso es mejor $_POST) para que entiendas mas sobre esto.
Zalu2
Escuela de Hackers & Programación. http://ihackndev.blogspot.com/

_vicho_

creo que esto ya es lo ultimo XD

encontre este php y lo modifique para mi formulario, el problema es que tengo un error de sintaxis en la linea 10 y cuando le doy enviar me aparece el php en el explorador porque me sucede eso? muchas gracias por sus respuestas y espero aprender mas rapido para no dar tanta lata n_n

1  <?php
2
3  $nombres = $_POST['nombre'];
4  $email = $_POST['email'];
5  $asunto = $_POST['asunto'];
6  $comentarios = $_POST['comentarios'];


9  $to = "Soporte@disegrafweb.com.mx";
10 $header = "From": ".$nombres ."< ".$email.">;
11 $mensaje = 'Hola, ".$nombres ." (".$email.")\n te escribio el siguiente mensaje: \n\n';
12 $mensaje .= $comentarios;
13 mail($to, $asunto, $mensaje, $header) or die('No se puedo enviar el correo');
14 echo 'Se ha enviado un correo exitosamente de $nombres ($email)';
15
16 ?>

2Fac3R

Cita de: _vicho_ en 12 Enero 2012, 17:36 PM
creo que esto ya es lo ultimo XD

encontre este php y lo modifique para mi formulario, el problema es que tengo un error de sintaxis en la linea 10 y cuando le doy enviar me aparece el php en el explorador porque me sucede eso? muchas gracias por sus respuestas y espero aprender mas rapido para no dar tanta lata n_n

1  <?php
2
3  $nombres = $_POST['nombre'];
4  $email = $_POST['email'];
5  $asunto = $_POST['asunto'];
6  $comentarios = $_POST['comentarios'];


9  $to = "Soporte@disegrafweb.com.mx";
10 $header = "From": ".$nombres ."< ".$email.">;
11 $mensaje = 'Hola, ".$nombres ." (".$email.")\n te escribio el siguiente mensaje: \n\n';
12 $mensaje .= $comentarios;
13 mail($to, $asunto, $mensaje, $header) or die('No se puedo enviar el correo');
14 echo 'Se ha enviado un correo exitosamente de $nombres ($email)';
15
16 ?>

Vamos que queda mas bonito asi:
Código (php) [Seleccionar]
<?php
$nombres 
$_POST['nombre'];
$email $_POST['email'];
$asunto $_POST['asunto'];
$comentarios $_POST['comentarios'];
$to "Soporte@disegrafweb.com.mx";
$header "From"".$nombres ."".$email.">;
$mensaje 'Hola, ".$nombres ." (".$email.")\n te escribio el siguiente mensaje: \n\n';
$mensaje .= $comentarios;
mail($to$asunto$mensaje$header) or die('No se puedo enviar el correo');
echo 
'Se ha enviado un correo exitosamente de $nombres ($email)';
?>


Revisando el code, tienes un error en la linea 7:

Código (php) [Seleccionar]

$header = "From": ".$nombres ."< ".$email.">;


Cuando podriamos ponerlo asi (fijate en la concatenacion de variables con string):
Código (php) [Seleccionar]

$header = 'From: '.$nombres.'<'.$email.'>';


Para mi quedaria mejor asi (no testeado):

Código (php) [Seleccionar]

$nombres = $_POST['nombre'];
$email = $_POST['email'];
$asunto = $_POST['asunto'];
$comentarios = $_POST['comentarios'];
$to = "Soporte@disegrafweb.com.mx";
$header = 'From: '.$nombres.'<'.$email.'>';
$mensaje = "Hola, $nombres '$email' \n te escribio el siguiente mensaje: \n\n";
$mensaje .= $comentarios;
mail($to, $asunto, $mensaje, $header) or die('No se puedo enviar el correo');
echo 'Se ha enviado un correo exitosamente de $nombres ($email)';


Si te da error de linea 10 es porque no tienes ningun servidor SMTP que envie el correo (por si lo estas probando en local) necesitaras instalarte uno o que tu hosting lo contenga.
Zalu2
Escuela de Hackers & Programación. http://ihackndev.blogspot.com/

_vicho_

no tengo ningun mensaje de error 2Fac3R, solo cuando pulso enviar me abre el php en el exlorador porque sucede eso? :huh:

#!drvy

Tienes PHP instalado ? Te hace falta tanto Apache como PHP instalados para trabajar con códigos php localmente.


Saludos