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

    inviare due mail da form html attraverso PHP

    Ciao ragazzi ho un problema di questo tipo. Pagina html con un semplice form

    [HTML]
    codice:
    <form action="formmail.php" method="POST" enctype="multipart/form-data">
    <input type="hidden" name="destinatario" value="pippo1@disney.com"> 
    
    
    </p>
    
    
    </p>
    <table border="0">
    <tr>
      <td>
    	<p style="margin-top: 0; margin-bottom: 0"><font color="#C04000" face="Tahoma" style="font-size: 9pt">Nome in gioco*:</font></p>
    	<p style="margin-top: 0; margin-bottom: 0">
    	<input type="text" name="nome2" value="" size="38" class="campiform" /></td>
    </tr>
    [PHP]
    codice:
    <?php
    // Recupero il valore dei campi del form
    $destinatario = $_POST['destinatario'] =;
    $nome2 = $_POST['nome2'];
    .
    .
    .
    // Invio la mail
    if (mail($destinatario, $oggetto, $msg, $headers))
    {
      echo "
    
    Mail inviata con successo!</p>";
    }else{
      echo "
    
    Errore!</p>";
    }
    ?>
    dovrei fare in modo che questa mail sia inviata anche ad un altro indirizzo. Ho capito che devo usare il bcc, ma non capisco come. Chi mi da una mano? Grazie

  2. #2
    se non hai la neccessità di nascondere a ciascuno destinatario il nome dell'altra persona a cui hai inviato l'email, non c'è bisogno del bcc.

    devi semplicemente inserire un altro destinatario così:
    Codice PHP:
    <?php
    // Recupero il valore dei campi del form
    $destinatario "dest <$_POST['destinatario']>, dest2 <mail@dest2.it>"//Inserisco i destinatari
    $nome2 $_POST['nome2'];
    .
    .
    .
    // Invio la mail
    if (mail($destinatario$oggetto$msg$headers))
    {
      echo 
    "

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

    Errore!</p>"
    ;
    }
    ?>
    http://www.sanpaolosassari.it
    Il panino più buono è quello più grande

  3. #3
    e se avessi la necessità di nascondere? Chiedo giusto per acculturarmi

    Provato e mi da quest'errore:

    codice:
    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /web/htdocs/www.confederati.it/home/temp/formmail.php on line 3

  4. #4
    devi inserirlo negli header come stringa tipo:

    $header="bcc:test@test.it";


  5. #5
    ok questo lo metto negli header nel php:

    codice:
    $header="bcc:pippo@disney.it";
    ma nell'html non devo mettere nulla?

  6. #6
    Ciao, mi intrometto nella discussione e posto il mio primo messaggio..

    no l'html rimane come se dovessi inviare una sola mail.

    Un altro modo per inviare + mail ma leggermente + macchinoso potrebbe essere quello di aver gli indirizzi all'interno di un array e fare un ciclo con il quale si ripete l'invio per tutti gli elementi dell'array

  7. #7
    niente proprio non riesco. Posto il codice per intero magari qualcuno mi indicasse dove/come mettere questa benedetta seconda mail mi farebbe un favorone altrimenti no ne vengo fuori. Grazie

    [PHP]
    codice:
    <?php
    // Recupero il valore dei campi del form
    $destinatario = $_POST['destinatario'];
    $nome2 = $_POST['nome2'];
    $associazione = $_POST['associazione'];
    $altro = $_POST['altro'];
    $nome = $_POST['nome'];
    $cognome = $_POST['cognome'];
    $telefono = $_POST['telefono'];
    $mittente = $_POST['mittente'];
    $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($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 .= $nome2 . "\n\n";
      $msg .= $associazione . "\n\n";
      $msg .= $altro . "\n\n";
      $msg .= $nome . "\n\n";
      $msg .= $cognome . "\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>";
    }
    ?>

  8. #8
    up people so che la risposta è alla vostra portata

  9. #9
    Se tutto fin qui è giusto allora

    codice:
    // Invio la mail
    if (mail($destinatario, $oggetto, $msg, $headers))
    {
      echo "
    
    Mail inviata con successo!</p>";
    }else{
      echo "
    
    Errore!</p>";
    }
    diventa


    codice:
    // Invio la mail
    
         $destinatari=array("tuamail@mail.est",$destinatario);
        foreach($destinatari as $destinatario)
        {
            if (mail($destinatario, $oggetto, $msg, $headers))
            {
                  echo "
    
    Mail inviata con successo!</p>";
             }else{
                  echo "
    
    Errore!</p>";
             }
        }

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.