Tema destacado: Únete al Grupo Steam elhacker.NET
Autor
|
Tema: [Solucionado] Problema con enviar email (Leído 1,196 veces)
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Estoy haciendo un formulario para enviar un email a una direccion predefinida pero me da error, códigos: formulario.php <html> <body> <form action="enviar_c.php" method="post"> <table width="200" heicht="200" border="0"> <tr> <td>Asunto:</td> <td><input type="text" name="asunto" /></td> </tr> <tr> <td>Desde:</td> <td><input type="text" name="desde" /></td> </tr> <tr> <td>Mensaje:</td> <td><textarea name="mensaje"></textarea></td> </tr> <tr> <td></td> <td><input type="submit" value="enviar correo" /></td> </tr> </table> </body> </html> enviar_c.php: <?php if(isset($_POST['asunto']) && !empty($_POST['asunto']) && isset($_POST['desde']) && !empty($_POST['desde']) && isset($_POST['mensaje']) && !empty($_POST['mensaje'])) { $destinatario = "(noquieroponerelemail)"; $asunto = $_POST['asunto']; $mensaje = $_POST['mensaje']; mail($destinatario,$asunto,$mensaje); echo "correro enviado"; }else{ echo "correro no enviado"; } ?> El error es el siguiente: Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing
|
|
|
|
« Última modificación: 2 Enero 2012, 16:47 por |Demon| »
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
m0rf
Desconectado
Mensajes: 552
TBB
|
No esta habilitada la función mail en php.ini.
Si es un servidor gratuito olvidate. Sinó habilitalo.
Saludos.
|
|
|
|
|
En línea
|
Estilo ilícito ®
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Si, es gratuito, me descargué el AppServ
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
m0rf
Desconectado
Mensajes: 552
TBB
|
Yo hablaba si es un servidor de hosting gratuito.
Para configurarlo en tu servidor, instala un servidor de correo. Después en el archivo php.ini tienes que configurar que dirección o dominio utiliza tu servidor y poco más me parece.
|
|
|
|
|
En línea
|
Estilo ilícito ®
|
|
|
drvy | BSM
Desconectado
Mensajes: 1.129
badstupidmonkey
|
No tiene nada que ver, ademas la mayoría de los host gratuitos famosos (000webhost por ejemplo) permiten el envió de mails. Lo que dice el error es que no tienes definido el header From.Para hacerlo añade el header e incluye lo en mail(). Ejemplo: <?php $para = 'papanoel@SantaClausVillage.org'; $titulo = 'HDP dame mi juguete cabron!!!'; $mensaje = 'QUE ME DES MI REGALO O ME CHIVO A LOS REYES MAGOS ¬¬'; $headers = 'From: tucorreo@tudominio.com' . "\r\n" . 'Reply-To: tucorreo@tudominio.com'; mail($para, $titulo, $mensaje, $headers); ?> PD: Bajo Windows las aplicaciones de servidores SMTP son una ***** total. En vez de instalar tu propio smtp utiliza por ejemplo el de Gmail. Saludos
|
|
|
|
« Última modificación: 27 Diciembre 2011, 16:22 por drvy | BSM »
|
En línea
|
|
|
|
m0rf
Desconectado
Mensajes: 552
TBB
|
Ya decia yo que se me pasaba algo por alto >.<
|
|
|
|
|
En línea
|
Estilo ilícito ®
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Este es el nuevo código: <?php if(isset($_POST['asunto']) && !empty($_POST['asunto']) && isset($_POST['desde']) && !empty($_POST['desde']) && isset($_POST['mensaje']) && !empty($_POST['mensaje'])) { $destinatario = "miemail"; $asunto = $_POST['asunto']; $mensaje = $_POST['mensaje']; $headers = 'From tucorreo@tudominio.com' . "\r\n" . 'Reply-To: tucorreo@tudominio.com'; mail($destinatario,$asunto,$mensaje,$headers); echo "correro enviado"; }else{ echo "correro no enviado"; } ?> Sigue dando el mismo error En " tucorreo@tudominio.com", tengo que poner MI email, lo dejo o que tengo que poner?
|
|
|
|
« Última modificación: 27 Diciembre 2011, 16:26 por |Demon| »
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
m0rf
Desconectado
Mensajes: 552
TBB
|
Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing
El error dice una cosa o la otra si no es el header form, tal vez sea la opción sendmail_from que la tienes que habilitar para qindows, ve a php.ini, quita la linea de comentario y pon el mail que vayas a utilizar.
Tal vez fallaban las dos cosas.
|
|
|
|
|
En línea
|
Estilo ilícito ®
|
|
|
drvy | BSM
Desconectado
Mensajes: 1.129
badstupidmonkey
|
Pues ami me parece re-raro esto.... xD
Saludos
|
|
|
|
|
En línea
|
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Pff el php.ini es largo, sabeis más o menos donde está?
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
drvy | BSM
Desconectado
Mensajes: 1.129
badstupidmonkey
|
...... Ctrl + F o Ctrl + B (Si tu windows es español), pones "sendmail_from" y das a buscar  PD: En el mio esta por la linea 1023... Saludos
|
|
|
|
|
En línea
|
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
mail function] ; For Win32 only. SMTP = localhost smtp_port = 25
; For Win32 only. ;sendmail_from = miemail ¿Sería así?
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
drvy | BSM
Desconectado
Mensajes: 1.129
badstupidmonkey
|
sendmail_from = tuemail@tuemail.com Quitale los ; que tiene delante para quitarlo como comentario. Y no te olvides de reiniciar Apache. Saludos
|
|
|
|
|
En línea
|
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Ya lo cambie, tambien lo reinicie. Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\AppServ\www\enviar_c.php on line 14
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
drvy | BSM
Desconectado
Mensajes: 1.129
badstupidmonkey
|
Bueno pues lo que decía @morf, necesitas un servidor SMTP. Prueba con este http://www.softstack.com/freesmtp.html Pero ya te digo que los servidores smtp para Windows ami me parecen una merde total. Lo que te recomendaría es que utilices la clase PHPMailer que simula la funcion mail(). Saludos
|
|
|
|
|
En línea
|
|
|
|
|
|