Visualizzazione risultati 1 fino 2 di 2

Discussione: Problema funzione Mail con multipart/alternative

  1. #1
    Guest

    Exclamation Problema funzione Mail con multipart/alternative

    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 &egrave; ancora attivo. &Egrave; necessario che tu vada al seguente indirizzo per confermare il profilo (&egrave; 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&agrave; 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..!
    Ultima modifica di macrosoft : 09-12-2007 alle ore 16.27.46 Motivo: Ho trovato il problema

  2. #2
    Guest

    Predefinito

    Scusate, sono un cretino! ho risolto tutto.... idiozia mia! Se nel boundary non inserisco "--" e "boundary" e metto un indirizzo esistente, allora tutto funziona correttamente! potete postare x insultarmi :P

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •