ciao ho seguito questa discussione ora che mi trovo anch'io impantanato su questo problema.
in particolare non ti ho seguito in questo punto
- Se non ti arriva nulla, e le e-mail ti vengono filtrate, a vai a vederti i motivi (di solito sono scritti nell'header stesso della mail: come ad esempio un punteggio eccessivo calvolato dall'antispam o altro presente nella mail che non gli è piaciuto, come es l'utilizzo di i frame o altro tipico di chi fa spam). A questo ....
come faccio a trovare gli errori nell'header se la mail non arriva?
io uso questo codice, QUALCHE APPUNTO DA FARMI visto che da qualche giorno (dopo aver funzionato per circa 2 anni) non invia più alcuna mail??? grazie infinite.
codice:
<?php
# ids è il vettore che contiene gli id dei destinatari selezionati nelle schermate precedenti
$ids = explode(",", $strsel);
// Invio mail di copia a mio sito
$destinatario = "info@sito.it";
// Destinatari multipli come Ccn
$destinatari = "";
echo "<ul>";
foreach($ids as $val){
if(empty($val)) continue;
$mysqlc->query("SELECT email FROM tabella_ str WHERE id='$val'");
$result = mysql_fetch_array($mysqlc->result, MYSQL_ASSOC);
$destinatari .= $result['email'].",";
echo "[*]".$result['email']."";
}
echo "[/list]";
$destinatari = substr_replace($destinatari, '', -1, 1);
// query per prelevare le info dal db
$mysqlc->query("SELECT * FROM tab_rich WHERE id='".$_GET['id']."';");
$result = mysql_fetch_array($mysqlc->result, MYSQL_ASSOC);
// Oggetto
$oggetto = "SITO.IT - richiesta di informazioni - ".$result['nome'];
// Messaggio
$messaggio = "
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' />
<title>SITO.IT - Richiesta di Contatto</title>
</head>
<body style='text-align: center;'>
<div style='border: solid 0px; width: 752px; padding-top: 150px; margin: auto; background-image: url(http://www.SITO.com/banner/logojpg); background-repeat: no-repeat; background-position: top;'>
<div style='padding: 15px; border-top: solid #0000FF 1px; width: 100%;'>
<div style='text-align: left; color: #FF0000; font-weight: bold;'>
Buongiorno da SITO.IT,
è arrivata una richiesta di informazioni per prenotare un soggiorno presso la Vostra Struttura.
Qui di seguito i dettagli:
</div>
<div style='float: left; text-align: left;'>
Nome:
Mail:
Telefono:
Cellulare:
Fax:
Localita:
Dal:
Al:
Tipo di residenza:
Numero di persone:
Budget:
</div>
<div style='margin-left: 150px; text-align: left;'>
".$result['nome']."
".$result['mail']."
".$result['telefono']."
".$result['cellulare']."
".$result['fax']."
".$result['localita']."
".$result['periodosoggiornodal']."
".$result['periodosoggiornoal']."
".$result['tiporesidenza']."
".$result['numeropersone']."
".$result['budget']."
</div>
<div style='text-align: left; padding-top: 25px; padding-bottom: 25px;'>
Messaggio:
<div style='border: solid 1px; padding: 5px; width: 700px; height: auto;'>
".nl2br($result['messaggio'])."
</div>
</div>
</div>
<div style='border-top: solid #0000FF 1px; width: 100%; text-align: center; padding: 15px; font-family: Arial, Helvetica, sans-serif; font-weight: bold; font-size: 12px;'>
</div>
</div>
</body>
</html>
";
// costruiamo alcune intestazioni generali
$headers = "From: Info SITO IT <info@sito.it>" . "\r\n";
$headers .= "Bcc: Book <book@sito.it>, ".$destinatari."\n";
$headers .= "X-Mailer: sito_IT\n";
// costruiamo le intestazioni specifiche per il formato HTML
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$headers .= "Content-Transfer-Encoding: 7bit\n\n";
// Mail it
if(mail($destinatario, $oggetto, $messaggio, $headers)){
foreach($ids as $val){
if(empty($val)) continue;
$mysqlc->query("INSERT richieste_elaborate SET id_richiesta='".$_GET['id']."', id_struttura='$val', data_elaborazione='".time()."';");
}
# Imposta il flag della richiesta da elaborare in modo tale da essere considerata come richiesta già elaborata
$mysqlc->query("UPDATE tab_rich SET stato=1 WHERE id='".$_GET['id']."';");
# Controlla se il cliente è già presente in archivio altrimenti lo inserisce
$mysqlc->query("SELECT * FROM tab_cust WHERE cliente='".$result['nome']."' AND email='".$result['mail']."' AND telefono='".$result['telefono']."' AND cellulare='".$result['cellulare']."';");
if(($num = mysql_num_rows($mysqlc->result)) == 0){
#Determina se catalogare l'utente come opz1 o opz2
if(strtolower($result['tiporesidenza']) == "opz2") $type = "hotel";
else $type = "xxxxxx";
$mysqlc->query("INSERT INTO tab_cust SET email='".$result['mail']."', cliente='".$result['nome']."', telefono='".$result['telefono']."', cellulare='".$result['cellulare']."', type='$type';");
echo "<font style='color: #0000FF; font-weight: bold;'>Il cliente ".$result['nome']." è stato inserito nella lista dei clienti perchè non era presente!</font>
";
}else{
echo "<font style='color: #0000FF; font-weight: bold;'>Il cliente ".$result['nome']." non è stato inserito nella lista dei clienti perchè è già presente!</font>
";
}
# Azzera la stringa che contiene le strutture selezionate
$sessionclass->register("strsel", "");
echo "<font style='color: #003C01; font-weight: bold;'>
Richiesta elaborato con successo!
Un mail è stato inviato a ciascuna delle strutture indicate in alto!
Per avere un riepilogo dell'richiesta, con la possibilità di stampare, seleziona la voce report nel menù in alto!</font>";
} else echo "<font color='#0000FF'><h3>Problemi nell'elaborazione dell'richiesta, riprova più tardi!
Per il supporto tecnico consulatare la sezione help</h3></font>";
?>