Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100

    formattazione mail inviata tramie form php

    Buongiorno!

    ho creato un modulo html che, attravero un file php, invia i dati ad una casella di posta.
    Fin qui, tutto bene!
    il problema nasce quando il form viene scaricato dal client di posta, Foxmail. Quando tento di stampare il form, infatti, Foxmail cerca di salvare il modulo come file TIFF, questo perché non riconosce una codifica come HTML della mail arrivata.
    E' possibile fare in modo che il modulo venga scaricato come HTML?
    il codice del form di invio in php è questo:

    ----------------------
    <?php


    //this is kinda plain english
    //basicly it check's the recipient address...if you where wondering what it does

    // $recipient_in = split(',',$recipient);
    //for ($i=0;$i<count($recipient_in);$i++) {
    // $recipient_to_test = trim($recipient_in[$i]);
    // if (!eregi("^[_\\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\\.)+[a-z]{2,3}$", $recipient_to_test)) {
    // print_error("I NEED A VALID RECIPIENT EMAIL ADDRESS ($recipient_to_test) TO CONTINUE");
    // }
    //S}
    //change require to required
    if ($required)
    $require = $required;

    if ($require) {
    //this is kinda plain english
    $require = ereg_replace( " +", "", $require);
    $required = split(",",$require);
    for ($i=0;$i<count($required);$i++) {
    $string = trim($required[$i]);
    if((!(${$string})) || (!(${$string}))) {
    if ($missing_fields_redirect) {
    header ("Location: $missing_fields_redirect");
    exit;
    }
    $require;
    $missing_field_list .= "You Did Not Enter: $required[$i]
    \n";
    }

    /* for php programmers only
    if variables are'nt gettin sent you can just
    uncomment this line and include this code which will get all variables sent
    in the form and put them all in the message variable */

    //$message = parse_form($HTTP_POST_VARS);

    /* if underscore's dont appear, put them in, its just may editor is SHIT */

    /*
    i dont use this because i need some variables and its not very reliable this was used in v1.0 & v1.1 */

    }
    }

    //if no subject use $othersub
    if (!$subject)
    $subject = "$othersub";
    //if no $othersub & no $subject use form submission as subject
    else if ((!$othersub) && (!$subject))
    $subject = "Form Submission";



    //Send E-mail
    //other = if you added a extra field to the form call them other - other4
    // dont worry bout the $other variables if you dont have them in the form nothing will show in the email

    mail("$recipient","$subject","

    -- Ordine --

    - Dati Fatturazione -
    Nome: $nome
    Cognome: $cognome
    Indirizzo: $indirizzo
    CAP: $cap
    Città: $citta
    Provincia: $provincia
    Codice Fiscale: $codice_fiscale
    Partita IVA: $partita_iva
    Telefono Fisso: $telefono_fisso
    Cellulare: $cellulare
    e-mail: $email
    Modalità di Pagamento: $pagamento

    - Dati Spedizione -
    compilati solo se differenti rispetto ai Dati Fatturazione
    Nome: $nome_due
    Cognome: $cognome_due
    Indirizzo: $indirizzo_due
    CAP: $cap_due
    Città: $citta_due
    Provincia: $provincia_due
    Telefono Fisso: $telefono_fisso_due
    Cellulare: $cellulare_due


    - Elenco Prodotti Ordinati -
    Codice: $campo_uno - Quantità: $campo_due - Descrizione: $campo_tre

    Codice: $campo_uno1 - Quantità: $campo_due1 - Descrizione: $campo_tre1

    Codice: $campo_uno2 - Quantità: $campo_due2 - Descrizione: $campo_tre2

    Codice: $campo_uno3 - Quantità: $campo_due3 - Descrizione: $campo_tre3

    Codice: $campo_uno4 - Quantità: $campo_due4 - Descrizione: $campo_tre4

    Codice: $campo_uno5 - Quantità: $campo_due5 - Descrizione: $campo_tre5

    Codice: $campo_uno6 - Quantità: $campo_due6 - Descrizione: $campo_tre6

    Codice: $campo_uno7 - Quantità: $campo_due7 - Descrizione: $campo_tre7

    Codice: $campo_uno8 - Quantità: $campo_due8 - Descrizione: $campo_tre8

    Codice: $campo_uno9 - Quantità: $campo_due9 - Descrizione: $campo_tre9


    - Eventuali Note -
    $note

    ","From: $nome <$email>");
    // END send e-mail


    // INVIO DELLA MAIL
    if(@mail($to, $email, $subject, $body, $headers)) { // SE L'INOLTRO E' ANDATO A BUON FINE...

    header("location: conferma.htm");

    } else {// ALTRIMENTI...

    header("location: problema.htm");

    }

    ?>

    ----------------------
    ufino

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Originariamente inviato da dararag
    Guida all'invio di una mail su php.html.it
    innanzitutto grazie per il link!

    leggendo la guida credo di aver trovato una buona indicazione in queste righe:

    ---------------------
    Utilizzando la funzione mail() è possibile inviare email anche in formato HTML:
    mail("g.farina@html.it", "mesaggio di prova", "Questo è un messaggio di prova testuale", "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: test@html.it");
    Ogni riga dell'intestazione deve essere separata da \r\n rispetto alla precedente. Dobbiamo anche assicurarci che nel messaggio siano contenuti solo \n, in modo da evitare spiacevoli inconvenienti.
    ---------------------

    la mia domanda (da utente php con poca esperienza) è: dove devo andare ad inserire il comando ""MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\n"? nel file php o ne file html del form?
    un'altra domanda: nel form ho anche un campo "mail" in cui far inserire la mail di riferimento di chi invia il modulo: esiste la possibilità di includere nel file php che uso un comando per far arrivare in cc la mail anche al mittente?
    ufino

  4. #4
    Utente di HTML.it L'avatar di dararag
    Registrato dal
    Jan 2008
    Messaggi
    434
    allora, devi fare
    Codice PHP:
    mail ($destinatario$oggetto$messaggio"MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: $mittente\r\nCc: $mittente"); 

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Originariamente inviato da dararag
    allora, devi fare
    Codice PHP:
    mail ($destinatario$oggetto$messaggio"MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: $mittente\r\nCc: $mittente"); 
    ho risolto quasti tutti i problemi....resta solo uno legato alla formattazione HTML
    vorrei evidenziare alcuni campi con i tag [b], [i] e <u>
    se scarico la mail sul webmail compare tutto correttamente, mentre se la scarico su Foxmail compaiono le stringhe , e <u></u>
    :master:
    ufino

  6. #6
    Utente di HTML.it L'avatar di dararag
    Registrato dal
    Jan 2008
    Messaggi
    434
    sicuro che foxmail supporti l'html o che tu non debba settare qualcosa per scaricarle in questo formato?

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Foxmail supporta HTML in modo automatico....
    ufino

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    :master:

    il problema persiste...
    se visualizzo la mail sul webmail è tutto corretto, mentre se la scarico da Foxmail i tag [b], [i] e <u> non funzionano....

    qualche suggerimento?
    ufino

  9. #9
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Per curiosità, hai provato anche con altri client?

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Originariamente inviato da clasku
    Per curiosità, hai provato anche con altri client?
    non ancora....adesso provo e faccio sapere
    ufino

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.