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

    Mail probelma variabili. Grazie per l'attenzione =)

    Questo problema mi sta facendo impazzire da 2 giorni: un mio amico mi ha chiesto di farli un form di contatto, ok qiu ci siamo...ma poi il probelema è che questo deve inviare anche un po di allgati. Girando su internet ho trovato come mandare un form con un solo allegato. Ho provato con quelli multi ma nessuno mi ha funzionato. Avrò provato e modificato una 30 di script. Si vede che sono negato. Di php ho cominciato a caprne qualcosa solo in questi ultimi giorni. C'è qulcuno che mi puoi aiutare? Non vorrei riccorere ai script complessi per adesso, tipo A71, V-webmail, ecc. Mi sto solo chiedendo se un modo per inviare mail cn multipli allegati. Ho visto l'Html ha un'ottima funzionalità: multiple="multiple" ma non funziona con nessun script. Contracambio con le mie conoscenze in Html e css. Il php per adesso è il mio tallone d'acchille, soprattuto i form. Grazie

  2. #2
    Scusa forse vi serve il codice
    [PHP]
    ?php
    // Recupero il valore dei campi del form
    $destinatario = $_POST['destinatario'];;
    $mittente = $_POST['mittente'];
    $oggetto = $_POST['oggetto'];
    $indirizzo = $_POST['indirizzo'];
    $tipo = $_POST['tipo'];
    $veicolo = $_POST['veicolo'];
    $marca = $_POST['marca'];
    $modello = $_POST['modello'];
    $anno = $_POST['anno'];
    $km = $_POST['km'];
    $messaggio = $_POST['messaggio'];

    // Valorizzo le variabili relative all'allegato
    $allegato = $_FILES['allegato']['tmp_name'];
    $allegato_type = $_FILES['allegato']['type'];
    $allegato_name = $_FILES['allegato']['name'];

    // Creo 2 variabili che riempirò più avanti...
    $headers = "From: " . $mittente;
    $msg = "";

    // Verifico se il file è stato caricato correttamente via HTTP
    // In caso affermativo proseguo nel lavoro...
    if (is_uploaded_file($allegato))
    {
    // Apro e leggo il file allegato
    $file = fopen($allegato,'rb');
    $data = fread($file, filesize($allegato));
    fclose($file);

    // Adatto il file al formato MIME base64 usando base64_encode
    $data = chunk_split(base64_encode($data));

    // Genero il "separatore"
    // Serve per dividere, appunto, le varie parti del messaggio.
    // Nel nostro caso separerà la parte testuale dall'allegato
    $semi_rand = md5(time());
    $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";

    // Aggiungo le intestazioni necessarie per l'allegato
    $headers .= "\nMIME-Version: 1.0\n";
    $headers .= "Content-Type: multipart/mixed;\n";
    $headers .= " boundary=\"{$mime_boundary}\"";

    // Definisco il tipo di messaggio (MIME/multi-part)
    $msg .= "This is a multi-part message in MIME format.\n\n";

    // Metto il separatore
    $msg .= "--{$mime_boundary}\n";

    // Questa è la parte "testuale" del messaggio
    $msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
    $msg .= "Content-Transfer-Encoding: 7bit\n\n";
    $msg .= $messaggio . "\n\n";

    // Metto il separatore
    $msg .= "--{$mime_boundary}\n";

    // Aggiungo l'allegato al messaggio
    $msg .= "Content-Disposition: attachment;\n";
    $msg .= " filename=\"{$allegato_name}\"\n";
    $msg .= "Content-Transfer-Encoding: base64\n\n";
    $msg .= $data . "\n\n";

    // chiudo con il separatore
    $msg .= "--{$mime_boundary}--\n";
    }
    else
    {
    $msg = $messaggio;
    }
    $all=
    "Mittente: ".$mittente."\r\n".
    "Indirizzo: ".$indirizzo."\r\n".
    "Tipo: ".$tipo."\r\n".
    "Modello: ".$modello."\r\n";
    "Marca: ".$marca."\r\n";
    "Anno: ".$anno."\r\n";
    "Chilometraggio: ".$km."\r\n";
    // Invio la mail
    if (mail($destinatario, $oggetto, $msg, $all, $headers))
    {
    echo "

    Mail inviata con successo!</p>";
    }else{
    echo "

    Errore!</p>";
    }
    ?>
    [PHP]


    http://contat.eu/mail/MG/mail.html

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.