Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Inviare immagine in allegato via php

    Salve, sto cercando di inviare un immagine in allegato via email con il seguente script

    Codice PHP:


    <?php


     
    $fileDaInviare 
    "ciao.jpeg"// path del file da inviare
    $tipoFile ="image/jpeg"// il MIME type del file
    $nuovoNome ="immagine.jpg"// il nuovo nome che verrà utilizzato per il file allegato
    $mittente ="domenico@lib.it"// il mittente della mail
    $oggetto ="ciao"// l’oggetto della mail
    $testo_email ="ciao"// messaggio della mail
    $destinatario ="ioo@libero.it"// il destinatario della mail
    /* da qui inizia il setup della mail : */
    $headers ="From:".$mittente."\r\n"//imposto il mittente
    $file fopen($fileDaInviare,'rb'); //leggo il file da allegare
    $data fread($file,filesize($fileDaInviare));
    fclose($file);
    $semi_rand md5(time()); //imposto il MIME boundary per gli header (stringa unica)
    $mime_boundary ="==Multipart_Boundary_x{$semi_rand}x";
    // setto gli headers
    $headers .="\nMIME-Version: 1.0\n" .
    "Content-Type: multipart/mixed;\n" .
    " boundary=\"{$mime_boundary}\"";
    // setto la codifica della mail
    $testo_email .="This is a multi-part message in MIME format.\n\n" .
    "–{$mime_boundary}\n" .
    "Content-Type:text/html; charset=\"iso-8859-1\"\n" .
    "Content-Transfer-Encoding: 7bit\n\n" .
    $testo_email .="\n\n";
    $data chunk_split(base64_encode($data)); //codifico il file…
    // …e lo allego alla mail
    $testo_email .="–{$mime_boundary}\n" .
    "Content-Type: {$tipoFile};\n" .
    " name=\"{$nuovoNome}\"\n" .
    "Content-Transfer-Encoding: base64\n\n" .
    $data .="\n\n–{$mime_boundary}–\n";
    // ora posso inviare la mail normalmente
    $ok = @mail($destinatario$oggetto$testo_email$headers);
    if(
    $ok) {
    echo
    "La mail è stata inviata con successo!";
    } else {
    die(
    "Errore: la mail non può essere spedita.");
    }


     }
    ?>
    L email arriva a destinazione ma in allegato non compare nulla ,nel corpo della mail ricevuta compare il seguente testo

    MIME-Version: 1.0
    Content-Type: multipart/mixed;
    boundary="==Multipart_Boundary_xd40f7f931b2e105a86 c9827db69c2479x"

    ciao

    This is a multi-part message in MIME format.

    –==Multipart_Boundary_xd40f7f931b2e105a86c9827db69 c2479x
    Content-Type:text/html; charset="iso-8859-1"
    Content-Transfer-Encoding: 7bit

    ciao

    –==Multipart_Boundary_xd40f7f931b2e105a86c9827db69 c2479x
    Content-Type: image/jpeg;
    name="immagine.jpg"
    Content-Transfer-Encoding: base64

    /9j/4AAQSkZJRgABAgAAAQABAAD//gAEKgD/4gIcSUNDX1BST0ZJTEUAAQEAAAIMbGNtcwIQAABt

    bnRyUkdCIFhZWiAH3AABABkAAwApADlhY3NwQVBQTAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAA

    9tYAAQAAAADTLWxjbXMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAA

    AAAAAApkZXNjAAAA/AAAAF5jcHJ0AAABXAAAAAt3dHB0AAABaAAAABRia3B0AAABfAA AABRyWFla

    AAABkAAAABRnWFlaAAABpAAAABRiWFlaAAABuAAAABRyVFJDAA ABzAAAAEBnVFJDAAABzAAAAEBi

    VFJDAAABzAAAAEBkZXNjAAAAAAAAAANjMgAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAA

    cosa sbaglio ? Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    209
    PHPmailer

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.