urgente formail non mi funziona bene..

hypno

Nuovo Utente
15 Nov 2007
3
0
0
buonasera avrei bisogno di un formmail con allegato ..come questo
che però mi faccia scegliere la dimensione massima dell'allegato e che mi garantisca comunque un allegato di almeno 5 mb .
perchè ho notato che con questo se allego un file di pochi kb tipo un immagine .gif ,mi arriva il messaggio con allegato tutto ok .
se già voglio caricare una foto o un mp3 mi dice messaggio inviato correttamente ma in realtà nella mia casella (1gb di spazio web mail domini di aruba) non mi arriva nulla nemmeno il messaggio...
grazie mille.




PHP:
<?php 
// Recupero il valore dei campi del form 
$destinatario = $_POST['destinatario']; 
$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 .= $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)) 
{ 
header('Location: grazie.htm'); 
}else{ 
header('Location: errore.htm'); 
} 
?>
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Lo spazio della tua casella email non centra, nel file di configurazione di php (php.ini) c'è una direttiva (upload_max_filesize) che definisce la dimensione massima consentita per l'upload di un file.
E' il valore di quella direttiva che và modificato.
 
Ultima modifica:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Il file Php.ini è necessario per il funzionamento di php, se non hai accesso ad esso dovresti richiedere alla assisistenza del tuo hosting di modificare quella direttiva.
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
in alternativa potresto provare a inserire direttamente la modifica della direttiva nel tuo codice scrivendo all'inizio:
PHP:
ini_set('max_upload_filesize', 520000);
ma non sempre funziona
 

jumborex

Nuovo Utente
7 Mar 2009
1
0
0
Ho trovato questo post (credo vecchio), proprio provando a risolvere un problema che mi trovo a non sapere risolvere.
Ho verificato l'esatto problema qui riportato: in pratica un formmail derivato e praticamente identico a quanto esemplificato su questo stesso sito: https://www.mrw.it/php/articoli/inviare-email-allegati-usando-php_497.html

Lo script, come dice l'autore originale di questo post, funziona bene, ma non se si allegano immagini, anche non troppo grandi. Per esempio, una immagine di 65K non arriva, la stessa immagine, ridotta (è un jpg) solo diminuendo la qualità a 52K arriva benissimo. Si tenga conto che non è segnalata alcuna malfunzione: la routine esce per invio Ok!

Quanto suggerito qui sopra non pare applicarsi al problema: nel mio caso il valore previsto per upload_max_filesize è 50M.

Cosa poi più strana, abbiamo ricevuto bene dei files DOC di 700K, ma (mi dicono gli utenti) non hanno mai ricevuto un secondo DOC di 90K.

Questo comportamento non è invece così variabile per quanto riguarda le immagini, che non possono superare i 52K come ho già detto. Non posso giurare sul DOC di 90K e la segnalazione serve solo a riportare tutte le informazioni attualmente in mio possesso.
 
Discussioni simili
Autore Titolo Forum Risposte Data
K COMPRO account email italiani con password URGENTE Vendere e Acquistare pubblicita' online 3
M Cerco iscritti italiani youtube URGENTE Annunci servizi di Social Media Marketing 0
C Cerco pagina urgente e pago subito Annunci servizi di Social Media Marketing 3
Fuego2806 [Joomla] [URGENTE] iubenda Joomla 1
V Javascript urgente Javascript 1
C Sessioni in php (urgente) PHP 4
M Mappa immagine...vi prego è urgente, devo farlo quanto prima HTML e CSS 5
V ricerca urgente programmatore java Offerte e Richieste di Lavoro e/o Collaborazione 0
P Problema urgente con Python e la libreria Mechanize Programmazione 0
D Funzionalità gps righe comando urgente Sviluppo app per Android 1
A AAA programmatore cercasi URGENTE!!! Offerte e Richieste di Lavoro e/o Collaborazione 1
K redirect con mrw tools - urgente! Hosting 1
I Viasualizzare titolo immagine URGENTE Javascript 1
orlakio ho bisogno urgente di un codice..... PHP 1
C Urgente Ricerca Aiuto (a Pagamento) Form Altri Annunci 0
L URGENTE!!! Leggi e note legali Leggi, Normative e Fisco 0
I URGENTE javascript compatibile con safari Javascript 1
S URGENTE ho bisogno di webmaster per un nuovo e rivoluzionario progetto di consulenza. Guadagnare col Sito 1
F Problema urgente con checkbox, array e explode PHP 10
F Aiuto programmino javascript URGENTE please Javascript 0
S PROBLEMA database URGENTE! MySQL 0
D urgente please, devo realizzare un sito in 12 giorni Discussioni Varie 14
R Urgente é corretto il mio htaccess? Apache 1
B Help urgente Supporto Mr.Webmaster 2
A help cerco aiuto urgente x restyle sito + implemento pos virtuale HTML e CSS 2
A Help cerco aiuto urgente! HTML e CSS 4
C urgente: chi sa usare e darmi un consiglio per excel Discussioni Varie 4
T URGENTE codice popup Javascript 14
C Anomalie tra due domini -- URGENTE -- Domini 1
foki URGENTE: Aiuto Banner SWF Flash 1
I niente connessione, URGENTE Reti LAN e Wireless 2
D URGENTE: condizione Javascript da pagina ASP Classic ASP 5
P Cerco urgente webmaster Offerte e Richieste di Lavoro e/o Collaborazione 1
S URGENTE ! Database e ricerche mirate PHP 4
C XLS – VBA Creazione database da questionari. HELP urgente, pls Database 0
G HO urgente bisogno d'aiuto Windows e Software 0
F Urgente webmaster Offerte e Richieste di Lavoro e/o Collaborazione 0
E [RETRIBUITO] Amministratore Sito - URGENTE!!! - Offerte e Richieste di Lavoro e/o Collaborazione 0
V Nn si avvia + Windows XP (URGENTE!)............... Windows e Software 1
E richiesta aiuto urgente Classic ASP 0
N URGENTE "script src=http://www.bnradd.mobi/ngg.js" Database 0
D Guadagni a dismisura! urgente... Guadagnare col Sito 0
C Effetto rollover [era:aiuto urgente!!] Javascript 5
F aiuto urgente mattere video in swf *prime armi Flash 0
F ricerca programmatori java - urgente Altri Annunci 0
B Urgente Sviluppatore Php Mysql Napoli Altri Annunci 0
T [URGENTE]Condivisione tabelle MySQL 0
W Problema impaginazione contenuti [era:help urgente per sito internet!!!!!] HTML e CSS 1
I Aiuto!!!problema Urgente!!! Programmazione 1
I Informazione urgente!!!!! PHP 1

Discussioni simili