Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    58

    Codice php con allegato

    Salve, ho questo script in php:
    codice:
    <?php
       if ($_SERVER['REQUEST_METHOD']=="POST"){
    
       // we'll begin by assigning the To address and message subject
       $to=asd@asd.com";
    
       $subject="E-mail with attachment";
    
       // get the sender's name and email address
       // we'll just plug them a variable to be used later
       $from = stripslashes($_POST['fromname'])."<".stripslashes($_POST['fromemail']).">";
    
       // generate a random string to be used as the boundary marker
       $mime_boundary="==Multipart_Boundary_x".md5(mt_rand())."x";
    
       // store the file information to variables for easier access
       $tmp_name = $_FILES['filename']['tmp_name'];
       $type = $_FILES['filename']['type'];
       $name = $_FILES['filename']['name'];
       $size = $_FILES['filename']['size'];
    
       // here we'll hard code a text message
       // again, in reality, you'll normally get this from the form submission
       $message = "Here is your file: $name";
    
       // if the upload succeded, the file will exist
       if (file_exists($tmp_name)){
    
          // check to make sure that it is an uploaded file and not a system file
          if(is_uploaded_file($tmp_name)){
    
             // open the file for a binary read
             $file = fopen($tmp_name,'rb');
    
             // read the file content into a variable
             $data = fread($file,filesize($tmp_name));
    
             // close the file
             fclose($file);
    
             // now we encode it and split it into acceptable length lines
             $data = chunk_split(base64_encode($data));
         }
    
          // now we'll build the message headers
          $headers = "From: $from\r\n" .
             "MIME-Version: 1.0\r\n" .
             "Content-Type: multipart/mixed;\r\n" .
             " boundary=\"{$mime_boundary}\"";
    
          // next, we'll build the message body
          // note that we insert two dashes in front of the
          // MIME boundary when we use it
          $message = "This is a multi-part message in MIME format.\n\n" .
             "--{$mime_boundary}\n" .
             "Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
             "Content-Transfer-Encoding: 7bit\n\n" .
             $message . "\n\n";
    
          // now we'll insert a boundary to indicate we're starting the attachment
          // we have to specify the content type, file name, and disposition as
          // an attachment, then add the file content and set another boundary to
          // indicate that the end of the file has been reached
          $message .= "--{$mime_boundary}\n" .
             "Content-Type: {$type};\n" .
             " name=\"{$name}\"\n" .
             //"Content-Disposition: attachment;\n" .
             //" filename=\"{$fileatt_name}\"\n" .
             "Content-Transfer-Encoding: base64\n\n" .
             $data . "\n\n" .
             "--{$mime_boundary}--\n";
    
          // now we just send the message
          if (@mail($to, $subject, $message, $headers))
             echo "Message Sent";
          else
             echo "Failed to send";
       }
    } else {
    ?>
    (Passato da un amico che ha gia' usato...)Funziona tutto! Ma il problema è che se non carico un allegato, l'e-mail non viene inviata....come devo fare?Ho provato a modificarlo un po...ma se lo modifico non mi invia più niente, manco l'allegato!
    Cosa dovrei aggiungere?O togliere

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Hai provato ?

    Codice PHP:
    ...
          
    // now we just send the message

          
    $message 'prova';
          if (@
    mail($to$subject$message$headers))
             echo 
    "Message Sent";
          else
             echo 
    "Failed to send";
    ... 
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    58
    Originariamente inviato da badaze
    Hai provato ?

    Codice PHP:
    ...
          
    // now we just send the message

          
    $message 'prova';
          if (@
    mail($to$subject$message$headers))
             echo 
    "Message Sent";
          else
             echo 
    "Failed to send";
    ... 
    Provato...e purtroppo non funziona!

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    58
    Può centrare l'hosting linux?

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.