Visualizzazione risultati 1 fino 5 di 5

Discussione: Problema nell'uso di mail() html.

  1. #1
    ellepc non è connesso Neofita
    Data registrazione
    29-04-2013
    Messaggi
    2

    Predefinito Problema nell'uso di mail() html.

    Salve ho un problema a mandare le mail in html.... non me le manda (a due indirizzi uno gmail e l'altro libero) Il codice vi sembra corretto?


    Codice PHP:
    <?php
    include 'header.php';
    header('Content-type: application/json');


    $email = mysql_real_escape_string($_POST['PreReg_Email']);
    $pwd = mysql_real_escape_string($_POST['PreReg_Password']);
    $com_code = md5(uniqid(rand()));

    // Codifica
    $enc_email = fnEncrypt($email,$key);
    $enc_pwd = fnEncrypt($pwd,$key);


    //CONTROLLA SE C'E' GIA' UN UTENTE REGISTRATO.

    $sql = "SELECT `id` FROM `utenti` WHERE email='$enc_email'";
    $result = mysqli_query($con,$sql) or die(mysql_error($con));


    if (
    mysqli_num_rows($result) > 0) { //L'utente è presente nel database quindi interrompi la registrazione.

    $response = true;
    die(
    json_encode($response));
    exit;
    }
    else
    {
    //Crea nel database i dati principali dell'account.
    $sqlinsert="INSERT INTO $dbname.`utenti` (
    `id` ,
    `email` ,
    `password`,
    `com_code`
    )
    VALUES (NULL, '
    $enc_email', '$enc_pwd', '$com_code');";

    $result = mysqli_query($con,$sqlinsert) or die(mysqli_error($con));



    //Invia la mail di conferma registrazione

    if ($result)
    {
    //______________________________________________________________________

    $to = $email;
    $subject = "Conferma registrazione";

    $headers = "From: Miosito\r\n";
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
    $headers .= "X-Mailer: PHP/" . phpversion();


    $message = "
    <html>
    <body>
    <div style='border: thin solid #ACC7EE; font-size: large; -webkit-box-shadow: 1px 1px 0px 3px #CCCCCC; box-shadow: 1px 1px 0px 3px #CCCCCC; position: relative; text-align: center;'>
    <p><img style='position: absolute; top: 4px; left: 4px;' src='http://' width='300' height='132' /></p>
    <p align='center'>Conferma avvenuta registrazione: <br>
    <i>(Non rispondere a questo messaggio generato automaticamente)</i></p>
    <p align='center'>&nbsp;</p>

    <p align='center'>Benvenuto, le tue credenziali di accesso al portale sono: </p>
    <table style='margin:0 auto;'>
    <tr>
    <td>Username:</td>
    <td><strong>'.
    $email.'</strong></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><strong>'.
    $pwd.'</strong></td>
    </tr>
    </table>
    <p>&nbsp;</p>
    <p>Si prega di attivare l'account facendo click sul seguente link:</p>
    <p><a></a></p>
    </div>

    </body>
    </html>
    "
    ;
    //________________________________________________

    if(mail($to,$subject,$messaggio,$header)!= true)
    {
    exit;
    }



    }

    $response = false;
    die(
    json_encode($response));


    }
    // fine di else


    ?>

  2. #2
    Guest

    Predefinito

    avendo racchiso il testo di $message tra doppi apici questa parte è errata

    Codice PHP:
    $message="
    [...]
    <td><strong>'.
    $email.'</strong></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><strong>'.
    $pwd.'</strong></td>
    [...]
    "
    ;
    andrebbe così

    Codice PHP:
    $message="
    [...]
    <td><strong>
    $email</strong></td>
    </tr>
    <tr>
    <td>Password:</td>
    <td><strong>
    $pwd</strong></td>
    [...]
    "
    ;

  3. #3
    Guest

    Predefinito

    Buongiorno, anche io ho problemi con l'invio di mail html da php da altervista: la ma necessita' e' di creare una specie di optin-page per inviare un link di download di un catalogo in pdf solo a chi mi lascia l'indirizzo email .
    Il codice che sto usando e' il seguente :

    $to = $_POST['mail'];

    $subject = "Catalogo PDF Blackdog";

    $headers = "From: BlackDog\r\n";
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
    $headers .= "X-Mailer: PHP/" . phpversion();

    $oggetto = "catalogo pdf tavole BlackDog Surfboards";

    $msg = "<p>Ciao e grazie di averci contattato.<br>";
    $msg .= "<a href=http://blackdogsurf.altervista.org/BlackDog.pdf>Clicca qui per scaricare il catalogo</a><br>";
    $msg .= "Restando a disposizione per qualunque richiesta ti auguriamo buon surf ;)<br></p>";

    mail($to, "Catalogo pdf Blackdog", $msg, $headers);

    Qualcuno sa aiutarmi ?
    grazie

  4. #4
    ellepc non è connesso Neofita
    Data registrazione
    29-04-2013
    Messaggi
    2

    Predefinito

    Ok grazie, ho corretto e poi c'era anche il nome della variabile del corpo del messaggio che cambiava e quindi per quello non mandava in quanto il messaggio risultava vuoto probabilmente. Adesso comunque manda perfettamente la mail a libero... ma al mio altro indirizzo gmail non la manda. E sembra proprio una questione di filtri.. però mi sembrano un po' esageratamente restrittivi..

    Ad esempio se modifico il corpo togliendo l'immagine e i link... la mail arriva. Viceversa se c'è un link e/o un immagine, gmail non le riceve.
    La cosa curiosa.. è che non vengono neanche mandate nella cartella spam: Se nel testo c'è un immagine o un link.. non arrivano proprio non compaiono da nessuna parte.

    Viceversa, su libero arriva tutto senza problemi... con immagine e link.
    Ultima modifica di ellepc : 04-05-2015 alle ore 14.44.14

  5. #5
    Guest

    Predefinito

    ecco pure io ho gmail e a gmail me la manda solo se tolgo gli headers relativi all'html :(

Tags for this Thread

Regole di scrittura

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