PHP - Enviar uma newsletter

Paos[CeRe4L]

Power Member
Estou a construir um site para uma agencia de viagens. Foi-me pedido que fizesse um sistema pa enviar uma newsletter. Akilo basicamente é um form onde se insere info de texto e imagens e dps é gerado um ficheiro php com imagens e com a info dada no formulário.

O meu problema agora é a enviar isto por e-mail. Como no codigo da newsletter só estao os caminhos relativos dos ficheiros de imagem, qd envio mail ao outro lado nao chegam as imagens! :|

Alguém sabe, conceptualmente falando, de uma soluçao que permita resolver este problema? ficaria mt agradecido!

Obrigado!
 
não sei ao certo a solução ao teu problema.. mas tipo, as imagens não deveriam estar alojadas algures no server? assim bastava usares os caminhos absolutos para as imagens.
 
Caminhos aboslutos nao quero usar! Porque isso náo é nada portável! Se tiver que mover a pagina para outro servidor tinha de andar a mudar os caminhos em bués sitios....é uma solução que queria evitar a todo o cursto! :|
 
Paos[CeRe4L];2039313 disse:
Caminhos aboslutos nao quero usar! Porque isso náo é nada portável! Se tiver que mover a pagina para outro servidor tinha de andar a mudar os caminhos em bués sitios....é uma solução que queria evitar a todo o cursto! :|

Mas o PHP não dá para definir constantes/variáveis globais?
Ou não podes usar os dados do request para saber qual o URL?
 
Se mandas uma newsletter com as imagens em attach estás a bombardear o servidor e a caixa do destinatário desnecessariamente. Por exemplo, se cada imagem tiver 50Kb e mandares 1000 e-mails com 2 imagens: 2 x (50 x 1000) = 100,000Kb -> ~100 Mb de tráfego desnecessário.

Considera fazer upload das imagens para um servidor online - provavelmente o mesmo da agencia - e na newsletter, que - infelizmente - deves estar a fazer em formato HTML, apontas o source das imagens para o servidor. Ex: src='http://www.agencia.pt/imgs_newsletters/1/img1.jpg'
 
Última edição:
Se mandas uma newsletter com as imagens em attach estás a bombardear o servidor e a caixa do destinatário desnecessariamente. Por exemplo, se cada imagem tiver 50Kb e mandares 1000 e-mails com 2 imagens: 2 x (50 x 1000) = 100,000Kb -> ~100 Mb de tráfego desnecessário.

Considera fazer upload das imagens para um servidor online - provavelmente o mesmo da agencia - e na newsletter, que - infelizmente - deves estar a fazer em formato HTML, apontas o source das imagens para o servidor. Ex: src='http://www.agencia.pt/imgs_newsletters/1/img1.jpg'

É o que ele está a fazer. O problema concreto que ele colocou foi o problema dos paths absolutos das imagens.
 
slack_guy, porque é que dizes: "infelizmente deves estar a fazer em formato html", qual é o problema de se fazer as newsletters em html?

Cumprimentos
 
qual é o problema de se fazer as newsletters em html?
Eu não disse que havia problema.
Disse 'infelizmente' porque na generalidade dos casos enviam-se e-mails em formato HTML desnecessariamente. É mais 'lixo' - código HTML - que circula na Net... but... who cares?!?! já há tanto!

É o que ele está a fazer. O problema concreto que ele colocou foi o problema dos paths absolutos das imagens.
AH! Sorry, não foi isso que percebi da mensagem que ele escreveu. Pareceu-me haver uma confusão entre os caminhos absolutos no disco 'c:/blah/blah' e no URI 'http://www.blah.blah/blah'

Se o problema é a localização das imagens no servidor, apontas o src da imagem para um script que aceite parâmetros para 'adivinhar' qual é a imagem pedida.
Ex:
Código:
<img src='http://www.example.com/img.php?img=100' />
 
Eu não disse que havia problema.
Disse 'infelizmente' porque na generalidade dos casos enviam-se e-mails em formato HTML desnecessariamente. É mais 'lixo' - código HTML - que circula na Net... but... who cares?!?! já há tanto!

Ex:
Código:
<img src='http://www.example.com/img.php?img=100' />

Ok, já percebi qual era o teu ponto de vista, em parte concordo.

Em relação a solução que apresentas-te não me parece que funcione, porque se mudas de servidor tens de mudar o codigo html da newsletter, neste caso o src para o endereço do novo servidor. Muito sinceramente não estou a ver uma solução para o problema.

Cumprimentos
 
porque se mudas de servidor tens de mudar o codigo html da newsletter, neste caso o src para o endereço do novo servidor

Se especificar o URI da imagem não é solução manda as imagens em attach.
As imagens ou estão num servidor remoto ou vão no e-mail (ou ambas as soluções). Não há volta a dar-lhe.
 
imagino que algures no codigo deves ter um ficheiro para definir configurações como endereço da DB, user, pass etc etc
o que e que custa ter ai mais uma variável em que tens a parte absoluta do url.
qualquer coisa como:

Código:
$urlDoSite = "http://www.viagens-do-reumatico.pt/";

sempre que queiras referenciar uma imagem no email fazes:


Código:
<img src="<?= $urlDoSite ?>imagens/newsletter/img1.jpg">

assim se a agencia mudar de nome ou se quizeres fazer cortes de orçamento e deixar de ter dominio basta ir ao ficheiro de configuração e mudar o valor da variável $urlDoSite para "80.21.31.12"

espero que seja este o problema :P
 
Em se tratando de email marketing, as imagens têm que estar num servidor. Não podem ir como anexo, porque "pesa" bastante. Em envios pequenos ainda escapa, mas a tendência é os leitores de email bloquearem o email e ir para SPAM. Portanto, a melhor solução é alojar. Alguns dos melhores ESPs já te oferecem a solução de pores o ficheiro HTML e as imagens num ZIP e importar gerando a campanha de email (newsletter) automaticamente e pronta a enviar. Para além disso tens a possibilidade de analisar o HTML o que dá sempre jeito até porque o código usado na Web não é necessariamente "reutilizável" para email marketing.
 
Back
Topo