Visualizzazione risultati 1 fino 4 di 4

Discussione: Invio di allegato via form HTML con PHP

  1. #1
    Guest

    Predefinito Invio di allegato via form HTML con PHP

    Buonasera,
    E' da settimane che sto litigando con questi codici html e php.
    In pratica, dovrei fare in modo che l'utente possa mettere in allegato al mio file un file pdf o un'immagine e me la invii sulla mia mail:
    Nel codice html ho usato:
    Codice HTML:
    <input type="file">
    Ma non riesco a fare in modo che mi alleghi nella mail con il php l'allegato!!!
    Eccovi tutto il codice php:
    Codice PHP:
    <?php
    //....
    $nome = $_POST['nome'];
    $cognome= $_POST['cognome'];
    $numero= $_POST['numero'];
    $email=$_POST["email"];
    $errore="";
    if(empty(
    trim($nome))){$errore.="Non hai inserito il nome\n";}
    if(empty(
    trim($cognome))){$errore.="Non hai inserito il cognome\n";}
    if(empty(
    trim($numero))){$errore.="Non hai inserito il prefisso e il numero di telefono\n";}
    $email=filter_var($email,FILTER_SANITIZE_EMAIL);
    if(!
    filter_var($email,FILTER_VALIDATE_EMAIL)){$errore.="Email non valida o vuota\n";}
    if(empty(
    trim($farmaco1))){$errore.="Inserisci almeno un farmaco e il suo dosaggio\n";}
    if(empty(
    trim($formulazione1))){$errore.="Non hai inserito la formulazione del farmaco\n";}
    if(empty(
    trim($confezioni1))){$errore.="Non hai inserito il numero di confezioni\n";}
    if(
    $errore !=""){
    echo
    $errore;
    //e rimandi al form con un link o in automatico
    }else{
    $to = "info@ronzanisamuele.it";
    $body = "Contenuto del modulo:\n\n";
    $body .= "Nome: " . trim(stripslashes($_POST["nome"])) . "\n";
    $body .= "Cognome: " . trim(stripslashes($_POST["cognome"])) . "\n";
    $body .= "Numero di telefono: " . trim(stripslashes($_POST["prefisso"])) . " " . $numero . "\n";
    $body .= "E-mail: " . trim(stripslashes($_POST["email"])) . "\n\n";
    $body .= "1) Farmaco e Dosaggio: " . trim(stripslashes($_POST["farmaco1"])) . "\n";
    $body .= "1) Formulazione: " . trim(stripslashes($_POST["formulazione1"])) . "\n";
    $body .= "1) Confezioni: " . trim(stripslashes($_POST["confezioni1"])) . "\n\n";
    $body .= "2) Farmaco e Dosaggio: " . trim(stripslashes($_POST["farmaco2"])) . "\n";
    $body .= "2) Formulazione: " . trim(stripslashes($_POST["formulazione2"])) . "\n";
    $body .= "2) Confezioni: " . trim(stripslashes($_POST["confezioni2"])) . "\n\n";
    $body .= "3) Farmaco e Dosaggio: " . trim(stripslashes($_POST["farmaco3"])) . "\n";
    $body .= "3) Formulazione: " . trim(stripslashes($_POST["formulazione3"])) . "\n";
    $body .= "3) Confezioni: " . trim(stripslashes($_POST["confezioni3"])) . "\n\n";
    $body .= "4) Farmaco e Dosaggio: " . trim(stripslashes($_POST["farmaco4"])) . "\n";
    $body .= "4) Formulazione: " . trim(stripslashes($_POST["formulazione4"])) . "\n";
    $body .= "4) Confezioni: " . trim(stripslashes($_POST["confezioni4"])) . "\n\n";
    $body .= "5) Farmaco e Dosaggio: " . trim(stripslashes($_POST["farmaco5"])) . "\n";
    $body .= "5) Formulazione: " . trim(stripslashes($_POST["formulazione5"])) . "\n";
    $body .= "5) Confezioni: " . trim(stripslashes($_POST["confezioni5"])) . "\n";
    // INTESTAZIONI SUPPLEMENTARI
    $headers = "From: Modulo utenti<modulo@sito.it>";
    // INVIO DELLA MAIL
    //togli il silent
    if(mail($to, $subject, $body, $headers)) { // SE L'INOLTRO È ANDATO A BUON FINE...
    echo "La mail è stata inoltrata con successo.";
    } else {
    // ALTRIMENTI...
    echo "Si sono verificati dei problemi nell'invio della mail.";
    }
    //e rimandi dove vuoi con un link o in automatico
    }
    //....
    ?>

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Beh come minimo devi caricare (temporaneamente) sul suo spazio quel file, e non vedo nessun upload.
    Inoltre per allegare un file ad una email, almeno deve esserci l'header "Content-Disposition: attachment; filename="nomefile"".

    Ciao!

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Beh come minimo devi caricare (temporaneamente) sul suo spazio quel file, e non vedo nessun upload.
    Inoltre per allegare un file ad una email, almeno deve esserci l'header "Content-Disposition: attachment; filename="nomefile"".

    Ciao!
    Non saprei neanche come inserirlo, non è che potresti completarmelo tu?

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    È molto meglio che lo faccia tu stesso, così lo fai personalizzato secondo le tue esigenze. In questo forum non forniamo codice già pronto. Puoi vedere qui.

    Ciao!

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
  •