Problemi phpmailer x invio ad indirizzi di libero. Aiutatemi!

Troublesome 80'

Nuovo Utente
6 Ott 2008
4
0
0
Ciao a tutti, sto usando phpmailer x inviare messaggi agli utenti
iscritti su un sito che gestisco ma continuo ad avere problemi con
libero nel senso che i destinatari di libero nn ricevono nulla. Ho già
fatto diverse ricerche e mi sembra che alcuni abbiano risolto il
problema, solo che utilizzando la stessa tecnica nn ho ancora ottenuto
i risultati sperati. Ho provato a valorizzare correttamente tutte le
proprietà del messaggio questo è il codice incriminato:

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

$mail = new PHPMailer();
$mail->From = $email_rif;
$mail->FromName = $cliente;
$mail->Subject = $subject;
////////// COSTRUISCE IL CORPO DELLA MAIL //////////
$body="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
\n<html>\n<head>\n<meta content=\"text/html;charset=ISO-8859-15\" http-
equiv=\"Content-Type\">\n<title>" .
"Registrazione su mio sito</title>\n</head>\n<body>\n" .
"<div style=\"border: 2px solid silver; padding: 2px; font-
family: Arial, Verdana; font-size: 12px; width: 500px;\">\n" .
" <div style=\"border: 1px solid #3FA9DE; padding: 2px;\">
\n" .
" <div style=\"border: 2px solid silver; padding: 2px;
\">" .
" <div style=\"text-align: center; padding-bottom: 5px;
\">" .
" <img style=\"margin-top: 5px; border: 1px solid silver;
\" src=\"http://www.sito.eu/it/images_web/logo_mail.jpg\" alt=\"MIO
SITO\">\n" .
" </div>" .
" <div>\n" .
" testo del messaggio\n" .
" </div>" .
" </div>\n" .
" </div>\n" .
"</div>\n" .
"</body>\n</html>";
$mail->Body = $body;
$mail->AltBody = strip_tags($body2);
$mail->Sender = $email_rif;
$mail->AddReplyTo($email_rif,$email_rif);
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = $smtp_rif; // SMTP server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = $smtp_user; // SMTP username
$mail->Password = $smtp_pwd; // SMTP password
$mail->AddAddress($to);
@$mail->Send();
$mail->SmtpClose();
unset($mail);

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Grazie anticipatamente a tutti x eventuali suggerimenti postati, Ciao!
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Purtroppo non è un problema che dipende da PHP o da Sendmail, si tratta di un blocco dovuto all'antispam di Libero.
 

Troublesome 80'

Nuovo Utente
6 Ott 2008
4
0
0
ciao grazie per la risposta, xo' scusami anticipatamente se ti faccio qualche domanda(spero che tu risponda): Non posso fare niente x impostare dei parametri che gli facciano accettare i messaggi che mando? Anche senza usare l'smtp nn funziona, quindi nn ci sono strumenti adatti a programmare una newsletter in php(nn credo) ? Quali altri provider danno gli stessi problemi eventualmente? Cosa mi suggerisci di fare?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
il problema, come vedo si ripresenta, devo dirti non solo con libero ma a me capita anche con email.it:incazz2:

l'unica cosa che non capisco perchè vengano bloccate le email mie e non quelle del viagra, e-bay fasulle, nigeriani che ti offrono soldi gratis...
e chi più ne ha più ne metta...

in cosa sono più bravi gli spammer?

:hammer:
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Ammettendo che il vostro Ip non sia finito in qualche blacklist, direi che la soluzione potrebbe essere quella di analizzare le intestazioni delle email, provate a inviarvene una e guardate se negli headers non c'è qualcosa che possa motivare la rimozione del messaggio (ad esempio roba tipo
: Received: from xxxxxxxxxxxx.com (xxxxxxxxxxxx.it [127.0.0.1])).

In ogni caso una richiesta di assistenza al vostro provider di hosting per sapere se sono "in buoni rapporti" con Libero la farei.
 

Troublesome 80'

Nuovo Utente
6 Ott 2008
4
0
0
La Soluzione

Buongiorno a tutti scusate x lo stress causatovi e grazie x i vostri post, la mi soluzione è questa(il codice sottostante) e vi spiego xkè nn andava. Innanzitutto con libero scordatevi l'smtp nn arriverà mai e poi bisgna necessariamente valorizzare alcune proprietà della classe phpmailer ad esempio il replyto poi ho dovuto eliminare la riga dove valorizzavo il sender del phpmailer notando che il mio provider(pegaso hosting) lo mette di suo([email protected]), quindi togliendo l'utilizzo dell'smtp e lasciando il sender comunque nn arrivava allora ho eliminato entrambi. In qualsiasi caso devo ammettere che erano comunque e sempre solo problemi di libero(f------ libero!). Spero che questo possa servire a qualcuno, alla prossima ciao!

///////////////////////////////////////////////////////////////////////////////

require("path_to/class.phpmailer.php");
$mail = new PHPMailer();
$mail->From = $email_rif;
$mail->FromName = $cliente;
$mail->AddReplyTo($email_rif,$cliente);
$mail->Subject = $subject;
////////// COSTRUISCE IL CORPO DELLA MAIL //////////
$body = "<font face=\"Verdana\" size=\"2\">".$msg_att[$attivo]."</font>";
$body2="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n<html>\n<head>\n<meta content=\"text/html;charset=ISO-8859-15\" http-equiv=\"Content-Type\">\n<title>" .
"Registrazione su $titolo</title>\n</head>\n<body>\n" .
"<div style=\"border: 2px solid silver; padding: 2px; font-family: Arial, Verdana; font-size: 12px; width: 500px;\">\n" .
" <div style=\"border: 1px solid #3FA9DE; padding: 2px;\">\n" .
" <div style=\"border: 2px solid silver; padding: 2px;\">" .
" <div style=\"text-align: center; padding-bottom: 5px;\">" .
" <img style=\"margin-top: 5px; border: 1px solid silver;\" src=\"http://www.miosito.eu/it/images_web/logo_mail.jpg\" alt=\"MIO SITO\">\n" .
" </div>" .
" <div>\n" .
" $body\n" .
" </div>" .
" </div>\n" .
" </div>\n" .
"</div>\n" .
"</body>\n</html>";
$mail->Body = $body2;
$mail->AltBody = strip_tags($body2);
$mail->AddAddress($to);
@$mail->Send();
$mail->SmtpClose();
unset($mail);

///////////////////////////////////////////////////////////////////////////////
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
vediamo se è la soluzione (spero), per eliox

se negli headers non c'è qualcosa che possa motivare la rimozione del messaggio

qusto e quello che vedo in una mia news inviatami (dopo averla salvata in htm)

HTML:
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=iso-8859-1">
<p>prova di invio</p><p style="font-size: 10px;">per non ricevere più ns news rispondi scrivendo <b>remove</b> o clic su:<br>
			to not recieve our news just ansewer writing <b>remove</b> or click on:<br>
			<a href="http://www.cat-web.eu/newsLetter/rimuovi.php?uns=4-8">REMOVE</a></p>

:hammer:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
sono di nuovo me, ho guardato il codice e salvo questo

PHP:
$Emailmessaggio->SetLanguage('it','language/'); 
$Emailmessaggio->IsHTML(true); // email in formato HTML

il resto è uguale (comunque a libero e email.it non arrivano), secondo te è meglio toglierle?

p.s.
il corpo dell'email lo edito con fckeditor
 

Troublesome 80'

Nuovo Utente
6 Ott 2008
4
0
0
credo sia meglio che posti il pezzo intero di codice così è + facile vedere cosa eventualmente nn va. Tieni presente che isHtml nn serve se poi imposti l'AltBody xkè automaticamente il messagio viene mandato come multipart cioè la parte text/html e quella text/plain. Devi leggere i sorgenti dei messaggi x vedere le intestazioni di quelli che arrivano. E' li che ci sono gli inghippi.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ecco il codice

PHP:
<?php

/*----------------FINE verifica VARIABILI DA INVIARE----------------------------------*/
/* prima di queste riga faccio delle verifiche sui dati da form es. validita email e campi obbligatori------------------------*/
/* prima di queste riga faccio delle verifiche sui dati da form------------------------*/

/*----------------includo la classe phpmailer------------------------------------------------*/
require "phpmailler/class.phpmailer.php";

/*----------------istanzio la classe---------------------------------------------------------*/

$Emailmessaggio = new PHPmailer();
$Emailmessaggio->SetLanguage('it','language/'); 
$Emailmessaggio->IsHTML(true); // email in formato HTML

$Emailmessaggio->FromName= $email_nome;//deriva da una select del form per varie categorie

$Emailmessaggio->AddAddress('[email protected]');//in alcuni casi deriva da selezione db

$Emailmessaggio->Subject=$email_oggetto;
$Emailmessaggio->Body=$da_inviare;

/*selezione da db i vari indirizzi email select ecc.......*/

$conta=0;

while  ($riga=mysql_fetch_array($query)){

    $Emailmessaggio->From=$email_indirizzo;

    if($Emailmessaggio->Send()){ $conta++;}//conta puo arrivare circa a 7000
   echo "inviati :".$conta;
}//fine while


?>


mi sembra abbastanza simile al tuo, ma forse mi sbaglio
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Ho fatto una ricerchina, provate ad impostare la proprietà Sender:
PHP:
$Emailmessaggio->Sender = "[email protected]";
Serve ad aggiungere il return-path nell’header, gli spammers in genere non lo mettono.

E visto che ci siete mettete anche AltBody dopo Body:
PHP:
$Emailmessaggio->Body=$da_inviare; 
$Emailmessaggio->AltBody="testo alternativo";

Tenete poi conto che Libero ha un servizio con tempi di attesa superiori rispetto ad altri, le mail potrebbero anche non arrivare subito.
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
il mittente, in questo modo il suo indirizzo è disponibile anche nelle intestazioni.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
comincio a non capirci più nulla
questo è la porizone di codice



PHP:
	$invia_EM="SELECT * FROM email_infodisisc WHERE invia='1' ORDER BY id";
	//$invia_EM="SELECT * FROM ".$tabella." WHERE invia='1' ORDER BY id";
	$query_IN=mysql_query($invia_EM);
	$num_EM=mysql_num_rows($query_IN);//verifica se ci sono indirizzi
	//richiamo la classe---------------------------------
	require_once "phpmailler/class.phpmailer.php";
	//ed inizio ad istanziare la classe------------------
	$Emailmessaggio = new PHPmailer();
	$Emailmessaggio->SetLanguage('it','language/'); 
	$Emailmessaggio->IsHTML(true); // email in formato HTML
	$Emailmessaggio->FromName= $email_nome;//nome del mittente
	$Emailmessaggio->From=$email_da; //email del mittente
	$Emailmessaggio->Subject=$titolo;// oggetto dell'email
	$Emailmessaggio->Sender = $email_da; //return path
	$Emailmessaggio->Body=$testo."<p style=\"font-size: 10px;\"><br><br>per non ricevere più ns news rispondi scrivendo <b>REMOVE</b><br>to not recieve our news just ansewer writing <b>REMOVE</b></p>";
	//ripulisco il testo per testo alternativo e aggiungo  il remove
	$Emailmessaggio->AltBody = strip_tags($testo)."\n per non ricevere più ns news rispondi scrivendo REMOVE \n to not recieve our news just ansewer writing REMOVE";
	
	$inviate=0;

	if ($num_EM > 0){
		while ($riga=mysql_fetch_array($query_IN)){
			
			$email_A=$riga['email'];
			//echo $email_A."<br>";
			
			$Emailmessaggio->AddAddress=$email_A;
			
			if ($Emailmessaggio->Send())
    		{
      			$inviate++;
				
   			}else{
				echo "errore di trasmissione";
			}
			
		}//fine while
	}else{
		echo "non ci sono indirizzi";
	}//fine if indirizzi
	echo "inviate N° ".$inviate;
	mysql_close();
}// fine if invia


nella tabella ho 4 indirizzi (verificati: il mio e quello di tre amici)
dando invio continua a darmi errore di trasmissione
la riga commentata echo $email_A."<br>";
mi scrive i quattro indirizzi
dove è l'errore??:confused:
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ecco ho (psedudo) risolto, comunque il problema è un altro, cosi eliox puo modificare il suo articolo

il primo errore ere qui
$Emailmessaggio->AddAddress=$email_A;
che deve essere scritto
$Emailmessaggio->AddAddress($email_A);
e sin qui non ci piove.
invita l'email di prova (4 indirizzi) ricevevo 6 e mail
dopo attenta analisi delle email ricevute mi accorgevo che es.
[email protected]
[email protected]
[email protected]
[email protected]

ricevevo io [email protected] it n. 4 e mail in quanto
aggiunge al campo cc (altra simile al campo ccn)

per cui ricevevo (per ogni giro di while)

[email protected]
[email protected];[email protected]
[email protected];[email protected];[email protected]
[email protected];[email protected];[email protected];[email protected]

quindi (nel mio caso) non è giusto usare

ma cosa devo mettere per reimepire solo il campo to: ?

ho guardato dentro la classe ma non ho capito

$Emailmessaggio->mailTO=$email_A;?????

mi sa che devo tornare alla vecchia mail(), ma se risolvo questo fatto tutto:mavieni:
non so se mi sono spiegato
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Invio Mail con PHPMailer, problemi SMTP PHP 7
P problemi invio email con phpmailer PHP 47
P [PHPmailer] SMTP Aruba.. problemi PHP 8
P Problemi visualizzazione html con phpmailer PHP 6
borgo italia problemi con la classe PHPmailer PHP 4
borgo italia problemi e-mail con mail() e classe phpmailer PHP 5
F Problemi visualizzazione mappa Android studio Sviluppo app per Android 0
S Problemi Javascript + Aruba Javascript 2
A Problemi con move_uploaded_file PHP 7
M Problemi con la stampa dei valori in php PHP 1
L Problemi con il login PHP 2
L Problemi form Pagina php HTML e CSS 3
R Tutto su utf-8 ma ancora problemi con i caratteri speciali in mysql MySQL 1
Z problemi con foreach insert into PHP 10
B javascript per problemi con pdf e Safari Javascript 0
N Problemi kit videosorveglianza IP Cam e Videosorveglianza 0
M Problemi con creazione maschere Presentati al Forum 1
M Problemi con query a più tabelle PHP 3
R Problemi anomalo insermento in db PHP 9
S Problemi delle funzioni eliminate con PHP e MySQL PHP 4
S Problemi di un principiante PHP 3
M Problemi con blog Grav CMS (Content Management System) 0
F Problemi di visualizzazione di un sito su più browser WordPress 0
S Problemi di visualizzazione form contatti sito web HTML e CSS 2
S incoerenza di stampa. problemi con il magenta Photoshop 3
A problemi con paypall Java 1
A Problemi di accesso da remoto a Ipcam IP Cam e Videosorveglianza 6
michele81 [WordPress] problemi plug meteo api key WordPress 4
E Problemi in registrazione telecamere Dahua IP Cam e Videosorveglianza 6
felino [Windows 8.1] Problemi con connessione WiFi Windows e Software 0
M [PHP] Problemi su inserimento array nel db PHP 7
E [PHP] problemi nuova riga con fwrite su piattaforma android PHP 5
M [PHP] Problemi di salvataggio su campo calcolato PHP 0
O [HTML] problemi con la regola "background-attachment: fixed" in EDGE HTML e CSS 0
M [PHP] Problemi con query unione PHP 11
M [PHP] Problemi con select PHP 6
Spown [WordPress] Problemi visualizzazione su più browser + voci menu in movimento WordPress 1
ANDREA20 [HTML] problemi con il footer HTML e CSS 1
D [MS Access] problemi con inserimento campo in una maschera MS Access 6
M [PHP] Problemi con il riconoscimento login. PHP 21
A [WordPress] problemi con xampp WordPress 2
M Problemi con database Apache/2.4.37 (Win32) OpenSSL/1.1.1a PHP/7.3.1 PHP 6
P Problemi comunicazioni Comunicazioni dallo Staff 8
G I problemi non vengono solo per nuocere Presentati al Forum 0
A Problemi Wi-Fi Fastweb Reti LAN e Wireless 4
C [WordPress] Url vulnerability e problemi sito da mobile WordPress 0
S [PHP] problemi con le sessioni PHP 3
B Problemi accesso Instagram Smartphone e tablet 1
T [PHP] problemi con il browser PHP 0
M [Flash] Problemi conversione formato swf Flash 20

Discussioni simili