Diseño Web Empresa especialista en Diseño de paginas Web Diseño a medida

EMAIL:
CONTRASEÑA:
SOPORTE
Desde aquí puede solicitar soporte técnico o iniciar una incidencia de tipo tecnico o comercial tambien lo puede hacer por mail a info@vedcor.es
SOLICITE COMERCIAL
Desde aquí pude solicitar una visita comercial o atención comercial.
SOLICITE PRESUPUESTO
Solicite presupuesto de su proyecto web SIN COMPROMISO desde aquí. 

Noticias RSS

COMO PROGRAMACIÓN DE FORMULARIOS DE ENVÍOS DE CORREOS



DESCRIPCION

Programación para formularios de envío de correo


Los mensajes generados desde formularios PHP usando la función mail(), por defecto, tienen como FROM real del mensaje (Envelope Sender) la dirección nobody@servidor o anonymous@servidor.


El Envelope Sender es la dirección a donde se enviarán los mensajes de error en caso de haber algún problema con la entrega del mensaje al destinatario, por lo que si tiene el valor por defecto, dichas notificaciones no llegan nunca.

Además, muchos spammers que usan formularios web para el envío de mensajes no solicitados, usan dicha dirección por defecto para el envío, por lo que desde VEDCOR se ha procedido a evitar la salida desde nuestros servidores mensajes con dicho FROM y entre otras cosas, evitar así caer en listas negras.


Para cambiar dicha dirección FROM, lo que se debe hacer es añadir un parámetro adicional a la llamada a la función mail() en el que se indica la dirección de correo deseada para que se establezca como Envelope Sender, por ejemplo, la llamada habitual:


mail ("usuario@destino.com", "Asunto del mensaje", "Cuerpo del mensaje", $cabeceras)


debe cambiarse por algo como:


mail ("usuario@destino.com", "Asunto del mensaje", "Cuerpo del mensaje", $cabeceras, '-fusuario@origen.com');


Como se ve, el último parámetro es '-fusuario@origen.com' en el que se indica, seguido de "-f", la dirección que se quiera poner como FROM para el retorno de errores de mensajes y evitar que salgan como nobody o anonymous.


La dirección de correo usuario@origen.com, obviamente, debe ser de tu dominio y debe existir.


Además, para que funcione correctamente, la variable safe_mode de PHP debe estar a Off.





En portales como OsCommerce, deberemos buscar el archivo desde el cuál se envía el correo, llamado email.php, y alrededor de la línea 520, donde se llama a la función mail():





      if (EMAIL_TRANSPORT == 'smtp') {        return mail($to_addr, $subject, $this->output, 'From: ' . $from . $this->lf . 'To: ' . $to . $this->lf . implode($this->lf, $this->headers) . $this->lf . implode($this->lf, $xtra_headers));      } else {        return mail($to, $subject, $this->output, 'From: '.$from.$this->lf.implode($this->lf, $this->headers).$this->lf.implode($this->lf, $xtra_headers));      }debemos cambiarlo por:





      if (EMAIL_TRANSPORT == 'smtp') {        return mail($to_addr, $subject, $this->output, 'From: ' . $from . $this->lf . 'To: ' . $to . $this->lf . implode($this->lf, $this->headers) . $this->lf . implode($this->lf, $xtra_headers),'-fusuario@dominio.com');      } else {        return mail($to, $subject, $this->output, 'From: '.$from.$this->lf.implode($this->lf, $this->headers).$this->lf.implode($this->lf, $xtra_headers),'-fusuario@dominio.com');      }es decir, añadir un último parámetro con la dirección correcta. Esto se debe hacer en dos archivos que se suelen encontrar en las rutas:



/includes/classes/email.php

/admin/includes/classes/email.php


Con esto, los emails desde OsCommerce saldrán correctamente.



Más información se puede encontrar en la página de la función mail de PHP:  http://es2.php.net/function.mail

 

Marcas

Diseño web | Alojamiento web | Posicionamiento web | Enlaces | Porfolio | Artículos | Servicios | Mapa | Blog | Area cliente | © Copyright 2001- 2012 |
C / Velazquez 53 2do Izq 28001 Madrid España Diseño Web | Madrid 911 516 306 | Valencia 961 120 235 | Barcelona 933 938 165 | España Diseño Web
Diseño Web Empresa especialista en Diseño de paginas Web Diseño a medida
Valid XHTML 1.0 Transitional
¡CSS Válido!