Scusatemi, anch'io ho un problema simile.
Ho un form nel sito per invio mail, e vorrei che l'utente potesse riempire i soliti campi Email, Oggetto e Messaggio. con l'opzione di allegare un file, e precisamente solo una immagine jpg, png o bmp.
Ho trovato e sto provando anch'io PHPMailer, ma credo di non sapere dove settare le opportune modifiche per delle determinate esigenze.
questo è il form:
e questo è il php:
La risposta che mi da la pagina dopo l'invio è:
"Could not access file: Email inviata correttamente!"
e nell'email arriva:
come mittente "Root User"
come Oggetto "Email con allegato"
come Messaggio "Invio file Pdf"
come Allegato nulla
Dal codice php per Inviare allegati con PHPMailer della guida, ho apportato alcune modifiche (ovviamente sbagliate).
Avendo deciso di non sfruttare il metodo SMTP, ho eliminato tutte le chiamate ai metodi: IsSMTP() e Host(), come da guida, e come consigliato da Eliox precedentemente, ho modificato la stringa:
in:
Arrivato a questo punto mi sono arreso.
Quello che vorrei è che giungesse sia l'email del mittente che inserisce nel campo "Email",
sia il testo della missiva che inserisce nel campo "Messaggio"
e per ultimo il file che allegherà l'utente in formato jpg, png o bmp.
Spero qualcuno saprà aiutarmi?
Un Grazie anticipato è cosa buona e giusta!
Ho un form nel sito per invio mail, e vorrei che l'utente potesse riempire i soliti campi Email, Oggetto e Messaggio. con l'opzione di allegare un file, e precisamente solo una immagine jpg, png o bmp.
Ho trovato e sto provando anch'io PHPMailer, ma credo di non sapere dove settare le opportune modifiche per delle determinate esigenze.
questo è il form:
HTML:
<form action="form.php" method="POST">
<table style="border:0;color:white;float:left">
<tr>
<td>Tua Mail:</td>
<td><input type="text" name="From" value="" style="width: 300px" /><br><br></td>
</tr>
<tr>
<td>Oggetto:</td>
<td><input type="text" name="Subject" value="" style="width: 300px" /><br><br></td>
</tr>
<tr>
<td>Messaggio:</td>
<td style="width:300px"><textarea cols="20" rows="4" name="Body" style="width:300px;overflow:hidden;height:130px; max-width:300px;max-height:130px"></textarea><br>
<br></td>
</tr>
<tr>
<td>Allega file:</td>
<td style="width:305px"><input type="file" name="AddAttachment" style="width:305px;" class="file_1"/><br>
<br><br></td>
</tr>
<tr>
<td colspan="2"><input type="image" value="submit" name="imput" src="images/invia2.png" style="float:right" /><br>
<br><br><br><span lang="it"></span></td>
</tr>
</table>
e questo è il php:
PHP:
<?
require "phpmailer/class.phpmailer.php";
$messaggio = new PHPmailer();
$messaggio->From='[email protected]';
$messaggio->AddAddress('[email protected]');
$messaggio->AddReplyTo('[email protected]');
$messaggio->Subject='Email con allegato';
$messaggio->Body='Invio file JPG';
//percorso all'allegato
$messaggio->AddAttachment($_FILES['input']['tmp_name'],$_FILES['input']['name']);
if(!$messaggio->Send()){
echo $messaggio->ErrorInfo;
}else{
echo 'Email inviata correttamente!';
}
$messaggio->SmtpClose();
unset($messaggio);
?>
La risposta che mi da la pagina dopo l'invio è:
"Could not access file: Email inviata correttamente!"
e nell'email arriva:
come mittente "Root User"
come Oggetto "Email con allegato"
come Messaggio "Invio file Pdf"
come Allegato nulla
Dal codice php per Inviare allegati con PHPMailer della guida, ho apportato alcune modifiche (ovviamente sbagliate).
Avendo deciso di non sfruttare il metodo SMTP, ho eliminato tutte le chiamate ai metodi: IsSMTP() e Host(), come da guida, e come consigliato da Eliox precedentemente, ho modificato la stringa:
PHP:
$messaggio->AddAttachment('pdf/file.pdf');
in:
PHP:
$messaggio->AddAttachment($_FILES['input']['tmp_name'],$_FILES['input']['name']);
Arrivato a questo punto mi sono arreso.
Quello che vorrei è che giungesse sia l'email del mittente che inserisce nel campo "Email",
sia il testo della missiva che inserisce nel campo "Messaggio"
e per ultimo il file che allegherà l'utente in formato jpg, png o bmp.
Spero qualcuno saprà aiutarmi?
Un Grazie anticipato è cosa buona e giusta!