Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Form con ricevuta di ritorno

0 views
Skip to first unread message

Nadia

unread,
May 17, 2008, 2:54:10 PM5/17/08
to
Ciao a tutti,
ho una pagina php che genera un file di testo e poi lo spedisce via mail.
Vorrei che la mail fosse spedita con ricevuta di ritorno, ma non riesco in
nessun modo ad impostarlo.

Facendo varie ricerche ho trovato queste righe da inserire nell'header:

$headers .= 'Return-Receipt-To: <ma...@sito.it>\n';
$headers .= 'X-Confirm-Reading-To: <ma...@sito.it>\n';
$headers .= 'Disposition-Notification-To: <ma...@sito.it>\n';


Ma sembra che vengano del tutto ignorate, nell'header della mail ricevuta
non c'è traccia di queste righe e naturalmente non mi chiede la conferma di
lettura.

La mail viene spedita da un server linux

Avete qualche indicazione?
Grazie
--
Nadia
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
non rompere le scatole, aprile!
www.maipiusenza.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Filippo Toso - Creative Park

unread,
May 17, 2008, 3:09:08 PM5/17/08
to
Nadia ha scritto:

> $headers .= 'Return-Receipt-To: <ma...@sito.it>\n';
> $headers .= 'X-Confirm-Reading-To: <ma...@sito.it>\n';
> $headers .= 'Disposition-Notification-To: <ma...@sito.it>\n';
>
> Ma sembra che vengano del tutto ignorate, nell'header della mail

> ricevuta non c'h traccia di queste righe e naturalmente non mi chiede


> la conferma di lettura.
>
> La mail viene spedita da un server linux
>
> Avete qualche indicazione?

Posta tutto il codice.

--
Vuoi distribuire il tuo sito web su CD/DVD?
Prova http://www.dwebpro.com/
Vuoi diventare un esperto analista PHP/MySQL?
Vieni a fare uno stage con noi: http://www.creativepark.it/stage/

Nadia

unread,
May 17, 2008, 3:16:48 PM5/17/08
to
"Filippo Toso - Creative Park" <filipp...@creativepark.it> ha scritto nel
messaggio news:698oqkF...@mid.individual.net...
> Posta tutto il codice.


eccolo: (quelle tre righe ho provato a inserirle in vari punti dell'header
ma non è cambiato nulla)
Grazie

<?php
function sendMail(){
$to_name = 'nadia';
$from_name = 'mittente';
$subject = 'prova mail AR';
$body = 'testo della mail';
$to_email = 'destin...@sito.it';

//Let's start our headers
$headers = "From: $from_name <" . 'ma...@sito.it' . ">\n";
$headers .= "Reply-To: <" . 'ma...@sito.it' . ">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/related;
type=\"multipart/alternative\";
boundary=\"----=MIME_BOUNDRY_main_message\"\n";
$headers .= "X-Sender: $from_name <" . 'ma...@sito.it' . ">\n";
$headers .= "X-Mailer: PHP4\n";
//
//if (checkbox_form.checkbox[counter].checked)


$headers .= 'Return-Receipt-To: <ma...@sito.it>\n';
$headers .= 'X-Confirm-Reading-To: <ma...@sito.it>\n';
$headers .= 'Disposition-Notification-To: <ma...@sito.it>\n';

//
$headers .= "X-Priority: 3\n"; //1 = Urgent, 3 = Normal
$headers .= "Return-Path: <" . 'ma...@sito.it' . ">\n";
$headers .= "This is a multi-part message in MIME format.\n";
$headers .= "------=MIME_BOUNDRY_main_message \n";
$headers .= "Content-Type: multipart/alternative;
boundary=\"----=MIME_BOUNDRY_message_parts\"\n";
$message = "------=MIME_BOUNDRY_message_parts\n";
$message .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
$message .= "Content-Transfer-Encoding: quoted-printable\n";
$message .= "\n";
/* Add our message, in this case it's plain text. You could also add HTML
by changing the Content-Type to text/html */
$message .= "$body\n";
$message .= "\n";
$message .= "------=MIME_BOUNDRY_message_parts--\n";
$message .= "\n";

$_tmpname = 'punto.swf';
$_filename = 'punto.swf';

$fp = fopen($_tmpname, "rb"); //Open it
$data = fread($fp, filesize($_tmpname)); //Read it
$data = chunk_split(base64_encode($data)); //Chunk it up and encode it as
base64 so it can emailed
$message .= "------=MIME_BOUNDRY_main_message\n";
$message .= "Content-Type: application/octet-stream;\n\tname=\"" .
$_filename . "\"\n";
$message .= "Content-Transfer-Encoding: base64\n";
$message .= "Content-Disposition: attachment;\n\tfilename=\"" . $_filename
. "\"\n\n";
$message .= $data; //The base64 encoded message
$message .= "\n\n";
fclose($fp);

$message .= "------=MIME_BOUNDRY_main_message--\n";

// send the message

$ok = mail("$to_name <$to_email>", $subject, $message, $headers);

if ($ok == 1) {
print "Mail sent to $to_name ($to_email).";
} else {
print "Mail did not send. Please press the <b>back</b> button and
re-submit the e-mail.";
}
}
sendMail();
?>

Filippo Toso - Creative Park

unread,
May 17, 2008, 3:52:37 PM5/17/08
to
Nadia ha scritto:

> eccolo: (quelle tre righe ho provato a inserirle in vari punti

> dell'header ma non h cambiato nulla) Grazie

Perche' non utilizzi una classe gia' pronta tipo phpmailer che fornisce
le stesse funzioni (ed anche di piu') gia' testate e funzionanti per la
maggior parte di server e client?

Nadia

unread,
May 17, 2008, 5:26:30 PM5/17/08
to
"Filippo Toso - Creative Park" <filipp...@creativepark.it> ha scritto nel
messaggio news:698rc5F...@mid.individual.net...


> Perche' non utilizzi una classe gia' pronta tipo phpmailer che fornisce
> le stesse funzioni (ed anche di piu') gia' testate e funzionanti per la
> maggior parte di server e client?

Perchè l'invio mail mi serve solo in quella pagina e mi sembra inutile
caricare un file da 50 KB quando basta prendere i pezzi che mi servono e
cavarmela con 3KB.

Comunque phpmailer per la ricevuta di ritorno inserisce nell'header:
$result .= $this->HeaderLine('Disposition-Notification-To', '<' .
trim($this->ConfirmReadingTo) . '>');

l'ho provato e come output ho:
...
X-Mailer: PHPMailer (phpmailer.sourceforge.net) [version 2.0.0 rc3]
Disposition-Notification-To: <mitt...@sito.it>
MIME-Version: 1.0
...
Ma nessuna notifica.

Nessuno ha uno script testato che funzioni con la conferma di lettura?

Grazie

Filippo Toso - Creative Park

unread,
May 18, 2008, 3:30:53 AM5/18/08
to
Nadia ha scritto:

> Perchh l'invio mail mi serve solo in quella pagina e mi sembra


> inutile caricare un file da 50 KB quando basta prendere i pezzi che
> mi servono e cavarmela con 3KB.

L'importante e' che quei 3 Kb funzionino, non ti sembra?

Ha provato questo codice e funziona perfettamente.

<?php
$to = 'nob...@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webm...@example.com' . "\r\n" .
'Disposition-Notification-To: <nob...@example.com>' . "\r\n";
mail($to, $subject, $message, $headers);
?>

Nadia

unread,
May 19, 2008, 11:24:19 AM5/19/08
to
"Filippo Toso - Creative Park" <filipp...@creativepark.it> ha scritto nel
messaggio news:69a49dF...@mid.individual.net...

> L'importante e' che quei 3 Kb funzionino, non ti sembra?

Su questo non ci piove, per questo chiedevo aiuto :-)


> Ha provato questo codice e funziona perfettamente.
>

...


> $headers = 'From: webm...@example.com' . "\r\n" .
> 'Disposition-Notification-To: <nob...@example.com>' . "\r\n";


Non mi chiedere spiegazioni, ma se, prendendo spunto dal tuo codice e
inserisco:

$intestazioni = "From: " . $da . "\r\n" .
'Disposition-Notification-To: <' . $da . '>';

funziona tutto anche a me, mentre come l'avevo provato io:

$intestazioni = "From: " . $da . "\r\n";
$intestazioni .= 'Disposition-Notification-To: <' . $da . '>';

L'output dovrebbe essere identico... eppure in un caso va e nell'altro no.

Grazie dell'aiuto!

0 new messages