Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    55

    PhpMailer inserire Allegato

    Ciao a tutti sto cercando di fare un form di invio mail con allegati con phpMailer.

    Cercando ho trovato questo esempio:
    Codice PHP:
    <?
    require "phpmailer/class.phpmailer.php";
    $messaggio = new PHPmailer();
    $messaggio->IsSMTP();
    $messaggio->Host='Host SMTP';
    $messaggio->From='info@mittente.it';
    $messaggio->AddAddress('info@destinatario.it');
    $messaggio->AddReplyTo('info@mittente.it'); 
    $messaggio->Subject='Email con allegato';
    $messaggio->Body='Invio file  Pdf';

    //percorso all'allegato
    $messaggio->AddAttachment('pdf/file.pdf');
    if(!
    $messaggio->Send()){
       echo 
    $messaggio->ErrorInfo
    }else{ 
      echo 
    'Email inviata correttamente!';
    }
    $messaggio->SmtpClose();
    unset(
    $messaggio); 
    ?>
    il quale funziona bene l'unico problema è che io voglio che l'allegato sia inserito dall'utente tramite un input type.
    Ho provato a sostituire

    $messaggio->AddAttachment('pdf/file.pdf');
    con
    $messaggio->AddAttachment($_POST['input']);

    ma non funziona perchè passa solo il nome del file (file.pdf) e non tutto il percorso.
    ...Don't let the bastards grind you down

  2. #2
    non è in $_POST che trovi quello che cerchi, guarda in $_FILES.

    http://www.php.net/manual/it/features.file-upload.php

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    55
    Originariamente inviato da spoon25
    non è in $_POST che trovi quello che cerchi, guarda in $_FILES.

    http://www.php.net/manual/it/features.file-upload.php
    Grazie per la risposta ho provato a vedere cosa restituisce print_r($_FILES);
    ma anche lì è presente solo nomefile.estensione e non tutto il percorso. Se io inserisco un percorso manualmente

    $messaggio->AddAttachment('/cartella/immagine.jpg');

    funziona benissimo; possibile che non riesca a leggere il percorso che compare nell'input file??
    ...Don't let the bastards grind you down

  4. #4
    Se è un file che hai caricato tramite una form di upload, il path completo del file (temporaneo) è contenuto in $_FILES['tuo_campo_file']['tmp_name'] mentre il nome del file è basename($_FILES['tuo_campo_file']['name'])

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    55
    Originariamente inviato da filippo.toso
    Se è un file che hai caricato tramite una form di upload, il path completo del file (temporaneo) è contenuto in $_FILES['tuo_campo_file']['tmp_name'] mentre il nome del file è basename($_FILES['tuo_campo_file']['name'])
    No non l'ho caricato con upload (è necessario)? Se metto il percorso "a mano" però funziona anche senza "uploddarlo" (forse lo fa già phpmailer??)
    ...Don't let the bastards grind you down

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.