Foros del Web » Programando para Internet » PHP »

Problemas de envio de mail

Estas en el tema de Problemas de envio de mail en el foro de PHP en Foros del Web. Empiezo este lenguaje de programación y cual debe de ser surgen muchas preguntas. Estoy probando un codigo que segun envia mails pero no llegan a ...
  #1 (permalink)  
Antiguo 26/10/2006, 15:23
 
Fecha de Ingreso: octubre-2003
Mensajes: 41
Antigüedad: 20 años, 5 meses
Puntos: 0
Problemas de envio de mail

Empiezo este lenguaje de programación y cual debe de ser surgen muchas preguntas. Estoy probando un codigo que segun envia mails pero no llegan a al mail al cual pongo como receptor, lo mas chistoso es que el codigo no me marca ningun error y no se lo que este pasando.

como saber si esta funcionando bien ese codigo, como se si mi maquina tenga bien configurado el SMTP o si lo tiene activado

Ignoro como trabaje esta parte en PHP, ya que en ASP simplemente se configuraba el IIS y se daba de alta el servicio pero aqui tengo mis dudas ya que el servidor que ocupo no es IIS si no APACHE.

Despues de esta historia, necesito de la ayuda de alguien que sepa guiarme y sacarme de este hoyo en el que me encuentro, de ante mano agradesco a las personas que gusten ayudarme, gracias.
  #2 (permalink)  
Antiguo 26/10/2006, 17:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bienvenido a PHP ..

Antes de usar la función mail() debes saber com PHP gestiona el envio del e-mail en sí. (esto lo dice mas o menos en la documentación oficial de mail: www.php.net/mail que te invito también a verla).

PHP sólo "entrega" el e-mail a enviar al MTA que tu servidor use . .es decir, a tu servidor SMTP o lo que uses para enviar e-mails. Ya sea uno instalado en tu servidor o el que indiques (en la configuración de PHP para que lo use). La función mail() de PHP original NO permite ningún tipo de Autentificación (por si estás pensando en usar el servidor SMTP que tengas de algún ISP tuyo ..).

En PHP para decirle que servidor SMTP usar lo indicas en su configuracion: php.ini en su apartado SMTP = .. ahí le indicas la IP del servidor que lo ejecuta o bien "localhost" si es la misma máquina.

Saber si tienes un servidor SMTP en tu PC instalado es cosa tuya .. Que en ASP e IIS este incorporte un servidor SMTP o mejor dicho un "MTA" y nunca supistes que realmente lo que tu "activavas" no es más que un servidor SMTP es otra cosa, .. en PHP realmente se te obliga mucho en general a tener muy claros algunos conceptos como estos de servidores, protocoolos y cosas así (te lo digo por qué te va a ocurrir muchas veces más con el uso diario con PHP en otros ámbitos).

Como ya te estarás dando cuenta .. en PHP no se proporciona nada más que el "interprete" .. si usas como servidor Apache .. ahí usas un servidor HTTP -sólo- .. otros tipos de servicios o servidores extra como un "SMTP" o MTA en general y otras cosas es preocupación de nosotros instalarlo.

Si quieres instalar un servidor SMTP para windows .. tienes muchos (usa google y veras los que salen). NO necesitas un servidor POP/IMAP (por qué veras muchos que hacen todo .. los servicios son "por separado" .. que algún software los ofrezca juntos es otra cosa .. pero a tí para este caso sólo te hace falta un servidor SMTP ... nada más, no te lies).

Algunos servidores SMTP para Windows:
Argosoft, QK SMTP Server, MiniRelay .. etc.

Los detalles de instalación y operación de estos los tendras que ver en sus respectivos manuales. Lo que corresponde al uso bajo PHP .. como te he comentado PHP no implementa "autentificación" .. así que si por algún sitio tienen un "botón" que active/desactive la opción de "Autentificación SMTP" .. desactivalo por qué sino con PHP y su función mail() no harás nada.

Por otro lado .. tienes algunos complemtenos (código PHP) que suplen las falencias de mail() (que ya iras viendo según la uses) .. Por ejemplo para enviar e-mails con archivios adjuntos, en HTML (multiparte) .. con imagenes incrustradas .. o tener que usar un servidor SMTP concreto (el de tu ISP por ejemplo) que requiera autentifiación (esta sería otra solución .. no uses un servidor SMTP en tu PC .. puedes usar el de alguna cuenta de correo que uses).

PHPMailer
http://phpmailer.sourceforge.net

Esta "classe" es código PHP en sí .. NO ES un servidor SMTP (o MTA) .. pero si que mejora las falencias de la función mail() nativa de PHP que no incorpora de "série".

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:24.