Ecco il codice completo dello script. Da premettere che è uno script presente nel sito www.html.it , dal nome "phpMailer". Ho cambiato alcune cose e tolto delle altre che ritenevo futili per il mio scopo.
codice:
<?php
// ---------------------------------------
// Variabili dei dati digitati dall'utente
// ---------------------------------------
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$email = $_POST['email'];
$telefono = $_POST['telefono'];
$variabile_privata = $_POST['variabile_privata']; // privacy :)
$variabile_privata = $_POST['variabile_privata']; // privacy
$variabile_privata = $_POST['input_privato']; // privacy
$variabile_privata = $_POST['input_privato']; // privacy
$variabile_privata = $_POST['input_privato']; // privacy
$variabile_privata = $_POST['input_privato']; // privacy
$variabile_privata = $_POST['variabile_privata']; // privacy
$variabile_privata = $_POST['variabile_privata']; // privacy
$termini = $_POST['terms'];
// ------------------------------
// Variabili dei dati dell'utente
// ------------------------------
$ip = $_SERVER['REMOTE_ADDR'];
$pagefrom = $_SERVER['HTTP_REFERER'];
$time = time(); // Qui c'è il timestamp
$date = date('d-m-y H:i:s',$time);
$browseruser = $_SERVER['HTTP_USER_AGENT'];
// ------------------------------
// Variabili del file da allegare
// ------------------------------
$allegato = $_FILES['file'];
$nome_file = $_FILES['file']['name'];
$nome_temp_file = $_FILES['file']['tmp_name'];
$nome_brow_file = $_FILES['file']['type'];
$dimens_file = $_FILES['file']['size'];
$dimens_max = 1572864;
$max_file_size="2048";
$formati_ok = array("jpg", "png", "jpeg");
$quanti_file = "1";
// --------------------
// Inizio Script
// --------------------
function get_ext($key) {
$key=strtolower(substr(strrchr($key, "."), 1));
// Cause there the same right?
$key=str_replace("jpeg","jpg",$key);
return $key;
}
function phattach($file,$name) {
global $boundary;
$fp=@fopen($file,"r");
$str=@fread($fp, filesize($file));
$str=@chunk_split(base64_encode($str));
$mail_body="--".$boundary."\n";
$mail_body.="Content-Type: application/octet-stream; name=\"".$name."\"\n";
$mail_body.="Content-disposition: attachment; filename=\"".$name."\"\n";
$mail_body.="Content-Transfer-Encoding: base64\n";
$mail_body.="\n";
$mail_body.="$str\n";
$mail_body.="\n";
return $mail_body;
}
function clean($key) {
$key=str_replace("\r", "", $key);
$key=str_replace("\n", "", $key);
$find=array(
"/bcc\:/i",
"/Content\-Type\:/i",
"/Mime\-Type\:/i",
"/cc\:/i",
"/to\:/i"
);
$key=preg_replace($find,"",$key);
return $key;
}
$error="";
$types="";
// ----------------------------------
// Verifica omissioni/errori nel form
// ----------------------------------
if($_POST['submit']==true) {
extract($_POST, EXTR_SKIP);
if(trim($nome)=="") {
$error.="Inserisci il tuo nome.
";
}
if(trim($cognome)=="") {
$error.="Inserisci il tuo cognome.
";
}
if(trim($email)=="") {
$error.="Inserisci il tuo indirizzo email.
";
} elseif(!eregi("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}\$",$email)) {
$error.="Inserisci un indirizzo email valido.
";
}
if(trim($telefono)=="") {
$error.="Inserisci il tuo numero di telefono.
";
} elseif (!is_numeric($_POST['telefono'])) {
$error.="Inserisci solamente numeri per il tuo numero di telefono.
";
}
if(trim($variabile_privata)=="") {
$error.="---------------------------.
"; // privacy
}
if(trim($variabile_privata)=="") {
$error.="-----------------------.
"; // privacy
}
// ------------------------------------
// Verifica se il file è stato caricato
// ------------------------------------
if($quanti_file > 0) {
for($i=0; $i <= $quanti_file-1; $i++) {
if($_FILES['file']['name'][$i]) {
$ext=get_ext($_FILES['file']['name'][$i]);
$size=$_FILES['file']['size'][$i];
$max_bytes=$max_file_size*2048;
// --------------------------------------------------------
// Verifica se il file è tra quelli che si possono caricare
// --------------------------------------------------------
if(!in_array($ext, $formati_ok)) {
$error.= "Il formato del file non è supportato. Puoi allegare solamente file .jpg, .jpeg e .png .
";
// -----------------------------------
// Verifica se il file è troppo grande
// -----------------------------------
} elseif($size > $max_bytes) {
$error.= "Il tuo file: ".$_FILES['file']['name'][$i]." è troppo grande. La grandezza massima è di 2.00 Mb.
";
}
} // Qui si chiude IF FILES
} // Qui si chiude il FOR
} // Qui si chiude il IF FILE ALLEGATO
// ----------------------------------------------
// Questa parte riguarda l'errore da visualizzare
// ----------------------------------------------
if($error) {
echo ("$error");
} else {
$boundary=md5(uniqid(time()));
$nome=clean($nome);
$variabile_privata=clean($variabile_privata);
$email=clean($email);
// -------------------------------------
// Processo di configurazione dell'email
// -------------------------------------
$mail_to = "IoRicevoLaMail@punto.com";
$mail_subject = "PAGINA DI PROVA SCRIPT FINALE!!!";
$mail_body .= "###########################################################################\n";
$mail_body .= "################ -------------------------------- ##########################\n";
$mail_body .= "###########################################################################\n";
$mail_body .= "###########################################################################\n";
$mail_body .= "################ La richiesta è stata inoltrata da: $email ##############\n";
$mail_body .= "###########################################################################\n";
$mail_body .= "################ La richiesta è stata inoltrata il: $date #################\n";
$mail_body .= "###########################################################################\n";
$mail_body .= "################ DATI RILASCIATI DALL'UTENTE ###############################\n";
$mail_body .= "###########################################################################\n\n\n";
$mail_body .= "Nome ---> $nome\n";
$mail_body .= "Cognome ---> $cognome\n\n";
$mail_body .= "Email ---> $email\n";
$mail_body .= "Telefono ---> $telefono\n\n";
$mail_body .= "Qua c'è una roba ---> $variabile_privata\n"; // privacy
$mail_body .= "Qua c'è un'altra roba ---> $variabile_privata\n\n"; // privacy
$mail_body .= "Qua c'è un'altra roba ---> $variabile_privata\n"; // privacy
$mail_body .= "Qua c'è un'altra roba ---> $variabile_privata\n\n"; // privacy
$mail_body .= "Qua c'è un'altra roba ---> $variabile_privata\n"; // privacy
$mail_body .= "Qua c'è un'altra roba ---> $variabile_privata\n\n"; // privacy
$mail_body .= "Qua c'è un'altra roba ---> $variabile_privata e $variabile_privata\n\n"; // privacy :)
$mail_body .= "Termini & Condizioni del servizio ---> $terms\n\n";
$mail_body .= "##############################################################################################\n";
$mail_body .= "################ INFORMAZIONI UTENTE ########################################################\n";
$mail_body .= "##############################################################################################\n\n\n";
$mail_body .= "IP di provenienza della richiesta: $ip\n";
$mail_body .= "Browser rilevato: $browseruser\n";
$mail_body .= "Pagina di provenienza utente: $pagefrom\n";
$mail_body .= "Data e ora inoltro richiesta: $date\n\n";
$mail_body .= "##############################################################################################\n";
$mail_body .= "##############################################################################################\n\n";
// --------------------------
// Qui si allega la questione
// --------------------------
if($quanti_file > 0) {
for($i=0; $i <= $quanti_file-1; $i++) {
if($_FILES['file']['name'][$i]) {
$mail_body.=phattach($_FILES['file']['tmp_name'][$i],$_FILES['file']['name'][$i]);
}
} // Qui si chiude il ciclo FOR
} // Qui si chiude l'IF
// ----------------
// Invio della mail
// ----------------
if(mail($mail_to,$mail_subject,$mail_body)) {
echo ("mail inviata");
} else {
echo("Si è verificato un errore, per favore contatta l'amministratore del sito.\n");
}
} // Else
} // $_POST
?>
Eccolo qui