Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di Fra2006
    Registrato dal
    Nov 2006
    Messaggi
    147

    Invio e-mail da sito internet

    Buongiorno a tutti!

    Sto creando un sito internet e ho la necessità di creare un modulo che, compilando determinati campi, riesca a far arrivare al mio indirizzo e-mail le informazioni inserite. Ci ho provato in HTML ma se l'utente che compila i dati non ha Outlook configurato fa solo dei gran casini!

    Sul forum di HTML mi hanno consigliato di creare un script lato server in PHP ma della materia ne mastico veramente poco!

    Potete darmi una mano? Vi ringrazio anticipatamente!

  2. #2
    cerca la funzione mail()

    ciao

  3. #3
    Utente di HTML.it L'avatar di Fra2006
    Registrato dal
    Nov 2006
    Messaggi
    147
    Ma per utilizzare il linguaggio PHP devo per forza installare un programma web server (tipo apache)??

    Ho scaricato uno script che ho trovato qui su html.it ma non so come inserirla nella mia pagina web!!

  4. #4
    se vuoi provarlo in locale devi necessariamente installare apache, altrimenti metti i file online e lì puoi vedere il funzionamento (sempre che il tuo host supporti php...)


  5. #5
    Utente di HTML.it L'avatar di Fra2006
    Registrato dal
    Nov 2006
    Messaggi
    147
    Quando installo apache (sia versione 2.0.59 sia versione 2.2.4) mi da degli errori e non riesco a farlo partire...Anche se seguo le istruzioni indicate nella guida all'installazione di apache!

    Ho provato ad inserire il codice php, scritto nello script che ho scaricato, nella mia pagina web dedicata all'invio della mail ma quando guardo l'anteprima mi compaiono solamente le scritte del codice!

  6. #6
    Da quel che leggo forse potresti provare ad installare EasyPHP o Xampp (sono pacchetti che includono PHP + MySQL + Apache) ed utilizzare questi come piattaforme di test. Dopo che li avrai installati prova i tuoi script ed eventualmente ri-posta!
    "it's a dark night!"
    Il sito internet del mio EX studio:
    http://www.tribal-art.it/
    Il sito internet dei Manutentori di Caldaie:
    http://www.manutentori-caldaia-polesani.it/

  7. #7

  8. #8
    Utente di HTML.it L'avatar di Fra2006
    Registrato dal
    Nov 2006
    Messaggi
    147
    Girando sul web ho trovato questo script già compilato che mi permette di inviare una semplice mail con un allegato:

    Codice PHP:
    <?php 
    // Recupero il valore dei campi del form 
    $destinatario $_POST['destinatario']; 
    $nominativo $_POST['nominativo']; 
    $mittente $_POST['mittente']; 
    $indirizzo $_POST['indirizzo'];
    $telefono $_POST['telefono']; 
    $oggetto $_POST['oggetto']; 
    $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($filefilesize($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 .= $nominativo "\n\n";
      
    $msg .= $indirizzo "\n\n";
      
    $msg .= $telefono "\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


    // Invio la mail 
    if (mail($destinatario$oggetto$msg$headers)) 

      echo 
    "

    Mail inviata con successo!</p>"

    }else{ 
      echo 
    "

    Errore!</p>"


    ?>
    Da come potete vedere, sono riuscito ad implementare questo codice per indicarmi anche il nominativo del mittente, l'indirizzo e il telefono nel messaggio dell'E-Mail.

    Ora però mi servirebbe riuscire a fargli inviare più di un allegato. Sono settimane che ci sto dietro ma non riesco a cavarne un ragno dal buco.

    Grazie mille per l'aiuto!

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.