Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466

    Mail ed allegati...non ho ben capito

    Ho lettol'articolo su freephp su come allegare file alle mail ma non ho ben capito.

    La mia esigenza è molto semplice, devo mandare una mail a 3 indirizzi e a questa mail devo allegare il file repA_10_08_2356.html

    Qualcuno mi da due dritte?

    Grazie, Mc

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Mi aiutate a finire il codice preso dall'articolo di freephp.

    In pratica io vorrei passare a questa funzione il nome del file da inviare ed i destinatari.

    Il file da inviare è contenuto nella stessa directory in cui è presente lo script che ivia la mail.

    Grazie, Mc

    Codice PHP:

    function send_mail($fileName,$Destinatari)
    {
         
    // ASSEGNIAMO A VARIABILI PIU' LEGGIBILI, LE PROPRIETA' DELL'ALLEGATO
         
    $attach =
         
    $file_name 
         
    $file_type 
         
    $file_size =
        
         
    // DELIMITATORE
         
    $boundary md5(uniqid(microtime()));
        
         
    // APRIAMO L'ALLEGATO PER LEGGERLO E CODIFICARLO
         
    $file = @fopen($attach"r");
         
    $contents = @fread($file$file_size);
         
    $encoded_attach chunk_split(base64_encode($contents));
         @
    fclose($file);
        
         
    // INTESTAZIONI DELLA MAIL
         
    $mail_headers .= "MIME-version: 1.0\n";
         
    $mail_headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"";
         
    $mail_headers .= "X-attachments: $file_name\n";
        
         
    // COSTRUIAMO IL CORPO DELLA MAIL
         
    $mail_body "--$boundary\n";
         
    $mail_body .= "Content-Type: text/plain; charset=us-ascii\n";
         
    $mail_body .= "Content-Transfer-Encoding: 7bit\n\n";
         
    $mail_body .= "$Contenuto\n\n";
         
    $mail_body .= "--$boundary\n";
         
    $mail_body .= "Content-type: $file_type; name=\"$file_name\"\n"
         
    $mail_body .= "Content-Transfer-Encoding: base64\n";
         
    $mail_body .= "$encoded_attach\n";
         
    $mail_body .= "--$boundary--\n";
        
         
    // INVIO DELLA MAIL
         
    if(@mail($Destinatario$Soggetto$mail_body$mail_headers)) { // SE L'INVIO E' ANDATO A BUON FINE...
        
         
    echo "La mail è stata inoltrata con successo.";
        
         } else {
    // ALTRIMENTI...
        
         
    echo "Si sono verificati dei problemi nell'invio della mail.";
        
         }




  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    In definitiva mi basta sapere che inserire in queste variabili:

    _____$attach_=
    _____$file_name_=_
    _____$file_type_=_
    _____$file_size_

    $file_name sarà repA_10_08_2356.html

    Thanks.

  4. #4
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    dovrebbe essere:
    _____$attach = percorso file da allegare
    _____$file_name = nome del file allegato
    _____$file_type = tipo di file
    _____$file_size= dimensione del file



    think simple think ringo

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    COnsiderando che lo script che genera la mail si trova nella medesima cartella del file in $attach che ci metto?


    Secondo te è corretto così:



    $attach_=
    $file_name_=repA_10_08_2356.html
    $file_type_=html
    $file_size=

    File size non saprei, ogni volta le dimensioni del file variano perchè è generato dinamicamente in base ad alcuni parametri.

    Non penso sia obbligatoria la dimenzione del file.

  6. #6
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    così dovrebbe andare:

    $attach_= 'repA_10_08_2356.html';
    $file_name_= 'repA_10_08_2356.html';
    $file_type_='text/html';
    $file_size= filesize('repA_10_08_2356.html');
    think simple think ringo

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Grazie mille.

    Mc

  8. #8
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    in caso di problemi prova ad usare phpmailer:
    http://phpmailer.sourceforge.net/

    p.s.: ho visto nel tuo codice un errore, ovvero "function send_mail($fileName, $Destinatari)" mentre su "if(@mail($Destinatario, $Soggetto"




    think simple think ringo

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    466
    Grazie mille ancora.

    Ciao, Mc

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.