questo upload dovrebbe inviarmi degli allegati alla mia email..
ma quando ricevo l'email al posto degli allegati ci sono i codici binari.
come fare in modo che vedo l'allegato (immagine)???
upload.php
Codice PHP:
<table>
<tr>
<td align="left">
<form name="form1" method="post" enctype="multipart/form-data" action="invia.php">
<table width="100%" border="0">
<tr>
<td>
<div align="right">
Utente:
</div>
</td>
<td class="titleblu">
<?php
echo "$userdata[username]";
?>
</td>
</tr>
<tr>
<td>
<div align="right">
Marca:
</div>
</td>
<td>
<div align="left">
<input name="marca" type="text" id="marca" size="20">
</div>
</td>
</tr>
<tr>
<td>
<div align="right">
Modello:
</div>
</td>
<td>
<div align="left">
<input name="modello" type="text" id="modello" size="20">
</div>
</td>
</tr>
<tr>
<td height="26">
<div align="right">
Immagine Originale:
</div>
</td>
<td>
<div align="left">
<input name="allegato" type="file" id="allegato" maxlength="300000">
</div>
</td>
</tr>
<tr>
<td height="26">
<div align="right">
Immagine Modificata:
</div>
</td>
<td>
<div align="left">
<input name="allegato" type="file" id="allegato" maxlength="300000">
</div>
</td>
</tr>
<tr>
<td>
<div align="center">
</div>
</td>
<td>
<div align="left">
<input name="Invia" type="submit" id="Invia" value="Invia Fotomontaggio">
</div>
</td>
</tr>
</table>
</table>
</td></tr>
</table>
</td>
invia.php
Codice PHP:
?php
$to = "tuamail@tuohost.it";
$subject = "Fotomontaggio $marca $modello da $nick";
// RENDIAMO LO SCRIPT COMPATIBILE CON LE VERSIONI DI PHP < 4.1.0
if(!isset($_POST)) $_POST = $HTTP_POST_VARS;
if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
// RIPULIAMO I VARI CAMPI DEL MODULO
$nick = trim(stripslashes($_POST["nick"]));
$marca = trim(stripslashes($_POST["marca"]));
$modello = trim(stripslashes($_POST["modello"]));
// ASSEGNIAMO A VARIABILI PIU' LEGGIBILI, LE PROPRIETA' DELL'ALLEGATO
$attach = $_FILES["allegato"]["tmp_name"];
$file_name = $_FILES["allegato"]["name"];
$file_type = $_FILES["allegato"]["type"];
$file_size = $_FILES["allegato"]["size"];
// DELIMITATORE
$boundary = md5(uniqid(microtime()));
// APRIAMO L'ALLEGATO PER LEGGERLO E CODIFICARLO
$file = @fopen($attach, "r");
$contents = @fread($file, $file_size);
$encoded_attach = chunk_split(base64_encode($contents));
@fclose($file);
// INTESTAZIONI DELLA MAIL
$mail_headers = "From: ";
$mail_headers .= "MIME-version: 1.0";
$mail_headers .= "Content-type: multipart/mixed; boundary="$boundary"";
$mail_headers .= "X-attachments: $file_name";
// COSTRUIAMO IL CORPO DELLA MAIL
$mail_body = "--$boundary
";
$mail_body .= "Content-Type: text/plain; charset=us-ascii
";
$mail_body .= "Content-Transfer-Encoding: 7bit
";
$mail_body .= "$nick
";
$mail_body .= "Fotomontaggio: $marca
";
$mail_body .= "Modello: $modello
";
$mail_body .= "--$boundary
";
$mail_body .= "Content-type: $file_type; name="$file_name"
";
$mail_body .= "Content-Transfer-Encoding: base64
";
$mail_body .= "$encoded_attach
";
$mail_body .= "--$boundary--
";
// INVIO DELLA MAIL
if(@mail($to, $subject, $mail_body, $mail_headers)) { // SE
L'INVIO È ANDATO A BUON FINE...
echo "La mail è stata inoltrata con successo.";
mail($_POST["mail"],$subject, $mail_body, $mail_headers);
} else {// ALTRIMENTI...
echo "Si sono verificati dei problemi nell'invio della mail.";
echo "<a href='upload.php'>riprova</a>";
}
?>