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

    Script per allegati non funziona

    Buon giorno, ho letto questo Post
    " http://forum.html.it/forum/showthrea...hreadid=513009 "
    molto interessante su come allegare un file nell'email, quello che voglio capire però è come mai, seguendo le indicazioni non mi allega nulla...
    La stringa o la path che indica il file da allegare, la invio tramite post nella pagina dove c'è l'invio effettivo della mail.

    codice:
    $titolo="file.pdf"; /*Inserire il nome che si vuole dare all'allegato*/ 
    $f=$_POST['txtAllegato']; 
    /*Inserire l'indirizzo del file che si vuole inviare come allegato*/ 
    $filetype="application/pdf"; /*Inserire il formato MIME del file da allegare*/ 
    //--CODICE NECESSARIO PER ALLEGARE UN FILE ALLA MAIL---//
    $body_top = "--Message-Boundary\n"; 
    $body_top .= "Content-type: text/html; charset=iso-8859-1\n"; 
    $body_top .= "Content-transfer-encoding: 7BIT\n"; 
    $body_top .= "Content-description: Mail message body\n\n"; 
    
    $msg_body = $body_top . $mess; 
    
    $filez = fopen($f, "r"); 
    $contents = fread($filez, filesize($f)); 
    $encoded_attach = chunk_split(base64_encode($contents)); 
    fclose($filez); 
    
    $msg_body .= "\n\n--Message-Boundary\n"; 
    $msg_body .= "Content-type: $filetype; name=\"$titolo\"\n"; 
    $msg_body .= "Content-Transfer-Encoding: BASE64\n"; 
    $msg_body .= "Content-disposition: attachment; filename=\"$titolo\"\n\n"; 
    $msg_body .= "$encoded_attach\n"; 
    $msg_body .= "--Message-Boundary--\n"; 
    
    // IL SOGGETTO DELLA MAIL
    $subject = "Richiesta Pronto Intervento proveniente da " . $txtDa;
    
    $body = "Contenuto del modulo:\n\n";
    $body .= "Da: " . $txtDa  . "\n";
    $body .= "Protocollo N: " . $txtProtocolloInvio  . "\n";
    //etc etc...
    
    // INTESTAZIONI SUPPLEMENTARI
    $headers = "From: RICHIESTA INTERVENTO";
    
    if(@mail($Servizi_Sezioni,$subject, $body, $headers, $msg_body)) { 
                 echo "
    
    <font class=\"max\">
                 La mail di Richiesta Intervento è stata inoltrata al servizio" . $Servizi_Sezioni . 
    	"con successo
    </font>" ;
    }
    else { 
                echo "Impossibile inviare la Mail - Riprovare più tardi";
    }
    Mi dite per favore dove sbaglio?Grazie mille

  2. #2
    che errore ti da?
    il tesoro più prezioso è la mia libertà

  3. #3
    Non mi allega il file questi sono gli errori:
    -Allegato: C:\Documents and Settings\Desktop\Nuova cartella\CommunicationComponents.pdf
    -Warning: fopen("C:\Documents and Settings\Desktop\Nuova cartella\CommunicationComponents.pdf", "r") - No such file or directory
    in /var/www/prova/InvioRichIntervTecnico.php on line 138

    la riga 138 è questa:
    codice:
    $filez = fopen($f, "r");
    -Warning: stat failed for C:\Documents and Settings\Desktop\Nuova cartella\CommunicationComponents.pdf (errno=2 - No such file or directory) in /var/www/prova/InvioRichIntervTecnico.php on line 139
    - Warning: Supplied argument is not a valid File-Handle resource in /var/www/prova/InvioRichIntervTecnico.php on line 139

    la riga 139 è questa:
    codice:
    $contents = fread($filez, filesize($f));
    Warning: Supplied argument is not a valid File-Handle resource in /var/www/prova/InvioRichIntervTecnico.php on line 141

    la riga 141 è questa:
    codice:
    fclose($filez);
    non so...Grazie per avermi risposto

  4. #4
    ho eseguito una modifichina, ma non è valsa a nulla, in pratica allega il file, ma nella posta arriva un file vuoto, ed adobe mi restituisce un'errore che non è possibile leggere il file...
    Vi chiedo:nello script che posto ora cosa sbaglio?
    codice:
    $mess="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"> 
    <HTML><HEAD> 
    <META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\"> 
    <STYLE> 
    H5 {text-align: justify; text-decoration: none; color: #333333; font-size: 12px; font-family: Arial} 
    A:link, A:visited, A:hover { color: #FFcc00 } 
    
    </STYLE> 
    </HEAD> 
    <BODY bgColor=#ffffff link=#333333 alink=#333333 vlink=#333333> 
    <DIV><h5>BLA BLA BLA BLA. Questo è il corpo dell'email; si possono usare tutti i tag html, come se si trattasse di una pagina internet.</h5> 
    </BODY></HTML> 
    "; 
    
    /*Nella variabile $mess va inserito tutto il codice html che comporrà il corpo dell'email che si vuole inviare. Come nell'esempio si possono utilizzare anche i fogli di stile.*/ 
    
    $e="antagonia@tiscali.it"; /*Inserire l'indirizzo email a cui si vuole spedire l'email*/ 
    $ogg="Oggetto dell'email"; /*Inserire l'oggetto dell'email da spedire*/ 
    $mittente="ant_agonia@hotmail.com"; /*Inserire l'indirizzo email che verrà visulaizzato come mittente dell'email*/ 
    $reply="ant_agonia@hotmail.com"; /*Inserire l'indirizzo email a cui verranno inviate le risposte all'email inviata*/ 
    
    $titolo="allegato.pdf"; /*Inserire il nome che si vuole dare all'allegato*/ 
    $f="file.pdf"; /*Inserire l'indirizzo del file che si vuole inviare come allegato*/ 
    $filetype="application/pdf"; /*Inserire il formato MIME del file da allegare*/ 
    
    
    
    /*Non modificare nulla al di sotto di questa linea*/ 
    
    $intestazioni = "From: $mittente\nReply-To: $reply\nX-Mailer: Sismail Web Email Interface\nMIME-version: 1.0\nContent-type: multipart/mixed;\n boundary=\"Message-Boundary\"\nContent-transfer-encoding: 7BIT\nX-attachments: $titolo"; 
    
    $body_top = "--Message-Boundary\n"; 
    $body_top .= "Content-type: text/html; charset=iso-8859-1\n"; 
    $body_top .= "Content-transfer-encoding: 7BIT\n"; 
    $body_top .= "Content-description: Mail message body\n\n"; 
    
    $msg_body = $body_top . $mess; 
    
    $filez = fopen($f, "r"); 
    $contents = fread($filez, filesize($f)); 
    $encoded_attach = chunk_split(base64_encode($contents)); 
    fclose($filez); 
    
    $msg_body .= "\n\n--Message-Boundary\n"; 
    $msg_body .= "Content-type: $filetype; name=\"$titolo\"\n"; 
    $msg_body .= "Content-Transfer-Encoding: BASE64\n"; 
    $msg_body .= "Content-disposition: attachment; filename=\"$titolo\"\n\n"; 
    $msg_body .= "$encoded_attach\n"; 
    $msg_body .= "--Message-Boundary--\n"; 
    
    if(!(@mail($e,$ogg,$msg_body, $intestazioni))){ 
    print "<H5>Invio della email fallito.</H5>";}
    Potete aiutarmi?E' molto importante....grazie mille

  5. #5
    scusate ma...ho risolto!!!In pratica sbagliavo ad inserire il percorso del file che dovevo allegare...alla prox

  6. #6
    nel post precedente avevo risolto inserende manualmente il percorso del file che dovevo allegare, invece , il file lo scelgo con la <input type='File' name='txtAllegato'>
    ma non c'è verso di farlo funzionare mi restituisce questi errori:

    Warning: fopen("g:\\html\\Servizi\\allegato.pdf", "r") - No such file or directory in /var/www/html/Servizi/email.php on line 45

    Warning: stat failed for g:\\html\\Servizi\\allegato.pdf (errno=2 - No such file or directory) in /var/www/html/Servizi/email.php on line 46

    Warning: Supplied argument is not a valid File-Handle resource in /var/www/html/Servizi/email.php on line 46

    Warning: Supplied argument is not a valid File-Handle resource in /var/www/html/Servizi/email.php on line 48

    Potreste dirmi per favore come mai ho questi errori?Grazie

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.