Salve a tutti! Ho cercato un po' nel forum e non mi è parso di trovare riferimenti a problemi cm questo..
In pratica, sto progettando un sito che comprende anche un'iscrizione, e al momento dell'iscrizione volevo recapitare all'utente un riepilogo e un link x la conferma per e-mail, e ovviamente mi sono servito della funzione mail() in php.. Però c'è un problema abbastanza grosso: le mie e-mail sono in multipart/alternative, sia testo piano che html. Ora, ho fatto parecchi tentativi cambiando intestazioni e contenuto, ma non cambia nulla, ogni volta k che il contenuto è in multipart l'invio dell'e-mail praticamente non avviene... o meglio, funziona, ma l'invio sembra avvenire 4/5 minuti dopo l'invocazione della funzione. Nel frattempo, la pagina contenente lo script si paralizza, si blocca, il trasferimento dati si interrompe e non comunica più col server (Opera segna trasferimeno 0b si ferma, IE ovviamente fa scadere il Timeout e così Mozilla).
Ho provato a riscrivere il file con la sola funzione mail(), non cambia nulla. L'invio dell'e-mail viene completato diverso tempo dopo, nel frattempo la pagina non è disponibile.
Posto il codice completo della pagina di test dell'e-mail,così potete vedere voi se notate qlks di strano, ma non credo ci sia nulla da notare xk basta l'istruzione Content-Type:multipart/alternative e i 3 boundary x causare il problema.
Codice:
<?
$mail=<<<MAILDATA
From: Anonymous <noreply@anonymous.it>
To: Lizard <xxxxxxxx@yahoo.it>
Subject: Benvenuto! - Conferma Account
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--boundary--24880ef6f51606f3b6ed16a1cc8ebc67--"
Date: Sun, 09 Dec 2007 13:32:56 +0100 (CEST)
----boundary--24880ef6f51606f3b6ed16a1cc8ebc67--
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Benvenuto - Conferma Account
----------------------------
Grazie per esserti iscritto ad Anonymous. Ecco un
riepilogo dei dati della tua iscrizione:
Username: #########
Password: ##########
E-Mail: xxxxxxxx@yahoo.it
Il tuo account tuttavia non è ancora attivo. È
necessario che tu vada al seguente indirizzo per
confermare il profilo:
http://xxxxxxxx.altervista.org/confirm.php?hash=3a41cb56ae331580a0ce9a558020d9a4b6c5bd37
Il link ha una validità di 48 ore.
Grazie per la collaborazione,
Lo Staff di Anonymous
----boundary--24880ef6f51606f3b6ed16a1cc8ebc67--
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
<!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>Anonymous - Benvenuto! - Conferma Account</title>
<style type="text/css">
div#container {
background-color:#BBBBBB;
position:relative;
width:400px;
height:300px;
}
a:link,a:visited,a:active {
font-weight: normal;
text-decoration:none;
color: #FFFFFF;
}
a:hover {
font-weight: bold;
text-decoration:none;
color: #FFFFFF;
}
div#background {
position:absolute;
z-index:0;
top:0px;
left:0px;
width:400px;
height:300px;
}
p {
margin:3px;
}
h6 {
font-size:14pt;
font-weight:bold;
margin-top:3px;
margin-left:8px;
margin-right:3px;
margin-bottom:3px;
}
div#content {
position:absolute;
z-index:1;
top:50px;
left:3px;
width:394px;
height:244px;
background-color:#000000;
color:#999999;
opacity:.60;
filter:alpha(opacity=60);
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10pt;
text-align:justify;
vertical-align:top;
}
</style>
</head>
<body bgcolor="#000000">
<center>
<div id="container">
<div id="background">
<img src="http://xxxxxxxx.altervista.org/images/mail_backgrounds/10.jpg" width="400" height="300" alt="Anonymous" />
</div>
<div id="content">
<h6>Benvenuto! - Conferma Account</h6>
<p>Grazie per esserti iscritto ad Anonymous. Ecco un riepilogo dei dati della tua iscrizione:</p>
<blockquote>
<p>
Username: <em>#########</em><br />
Password: <em>##########</em><br />
E-Mail: <em>xxxxxxxx@yahoo.it</em></p>
</blockquote>
<p>Il tuo account tuttavia non è ancora attivo. È necessario che tu vada al seguente indirizzo per confermare il profilo (è sufficiente che ci clicchi sopra):</p>
<p align="center"><a href="http://xxxxxxxx.altervista.org/confirm.php?hash=3a41cb56ae331580a0ce9a558020d9a4b6c5bd37">Conferma Account</a></p>
<p>Il link ha una validità di 48 ore.</p>
<p>Grazie per la collaborazione,</p>
<p align="right"><em>Lo Staff di Anonymous</em></p>
</div>
</div>
</center>
</body>
</html>
----boundary--24880ef6f51606f3b6ed16a1cc8ebc67----
MAILDATA;
$res=mail("xxxxxxxx@yahoo.it", "Benvenuto! - Conferma Account", "BODY", $mail);
if($res) {
echo "true";
} else {
echo "false";
}
?>
Ho oscurato un paio di punti x nn esporre i dati dell'utente (fisime inutili forse), ma non sn quelli i punti imp...
In conclusione, dopo avervi annoiati con un messaggio kmetrico, chiedo aiuto..!