Ciao , con IMMENSA fatica sono riuscito a creare il form e la pagina di controllo piu' AVANZATA che le mie possibilità attuali mi permettono .
Non capisco però il recupero del campo file ( nel mio caso chiamato inviafile)
Il mio è un problema tecnico ............in sostanza non so nello script seguente ( che funziona davvero bene e permette l'invio tramite mail ) come e dove inserire il codice relativo al campo file .
Il mio script che recupera il form è questo :
<?php
#recupero valori dei campi e li sottopongo a trim e striplashes
$nome=trim(stripslashes($_POST['nome']));
$cognome=trim(stripslashes($_POST['cognome']));
$email=trim(stripslashes($_POST['email']));
$telefono=trim(stripslashes($_POST['telefono']));
$partenza=trim(stripslashes($_POST['partenza']));
$richiesta=trim(stripslashes($_POST['richiesta']));
$messaggio=trim(stripslashes($_POST['campotesto']));
#controllo la lunghezza dei campi nome , cognome etc..
$lungh_nome=strlen($nome);
$lungh_cognome=strlen($cognome);
$lungh_email=strlen($email);
$lungh_telefono=strlen($telefono);
$lungh_partenza=strlen($partenza);
$lungh_richiesta=strlen($richiesta);
$lungh_messaggio=strlen($messaggio);
// inserisci qui il tuo indirizzo email
$receiverMail="hidestar@email.it";
// lettura dell'indirizzo IP
$ip = getenv("REMOTE_ADDR");
// formattazione del messaggio ( \n per le messe a capo )
$messaggioformat= "Messaggio da: $nome ($ip)\nEmail: $email\n$messaggio";
#controllo la mail, imposto una variabile che poi confronto con email
$pattern = "/^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][a-z0-9-]+\.)+([a-z]{2,})$/i";
#controllo che i campi siano superiori a 3 caratteri e non vuoti
if (($nome == "") || ($cognome == "")|| ($email == "")|| ($telefono == "")||($partenza== "")|| ($richiesta== "")|| ($messaggio == ""))
{
echo "<div id='msg' class='msgSENT'>Compila tutti i campi! <p id='close'>[click to close]</p></div>";}
else if (($lungh_nome <= 3)or($lungh_cognome <= 3) or ($lungh_partenza <= 3) or ($lungh_richiesta <=3)or($lungh_messaggio <= 3) )
{
echo "<div id='msg' class='msgKO'>I campi devono contenere almeno 3 caratteri! <p id='close'>
[click to close]</p></div>";
}
else if (!preg_match($pattern,$email))
{
echo "<div id='msg' class='msgKO'><b>\"$email\"</b>non è una email valida! <p id='close'>
[click to close]</p></div>";
}
else {
// invio del messaggio
$messaggio = "<html>
<head>
<title>Dati compilazione modulo</title>
</head>
<body>
From:<br><br>NOME-<b>$nome</b><br><br>COGNOME-<b>$cognome</b><br><br>
TELEFONO-<b>$telefono</b><br><br>EMAIL-<b>$email</b><br><br>PARTENZA-<b>$partenza</b><br><br>RICHIESTA-<b>$richiesta</b><br><br>MESSAGGIO-<b>"
.htmlspecialchars($messaggio )."</b>";
// questi parametri settano la modalità di invio HTML
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($receiverMail,$messaggioformat,$messaggio, $headers);
echo "<div id='msg' class='msgSENT'>Il messaggio e' stato inviato!Riceverai una risposta il prima possibile!<p id='close'>[click to close]</p></div>"; }
?>
Vorrei davvero capire come fare perche' da solo non ci riesco proprio .
Grazie:dipser: :dipser: :dipser:
Non capisco però il recupero del campo file ( nel mio caso chiamato inviafile)
Il mio è un problema tecnico ............in sostanza non so nello script seguente ( che funziona davvero bene e permette l'invio tramite mail ) come e dove inserire il codice relativo al campo file .
Il mio script che recupera il form è questo :
<?php
#recupero valori dei campi e li sottopongo a trim e striplashes
$nome=trim(stripslashes($_POST['nome']));
$cognome=trim(stripslashes($_POST['cognome']));
$email=trim(stripslashes($_POST['email']));
$telefono=trim(stripslashes($_POST['telefono']));
$partenza=trim(stripslashes($_POST['partenza']));
$richiesta=trim(stripslashes($_POST['richiesta']));
$messaggio=trim(stripslashes($_POST['campotesto']));
#controllo la lunghezza dei campi nome , cognome etc..
$lungh_nome=strlen($nome);
$lungh_cognome=strlen($cognome);
$lungh_email=strlen($email);
$lungh_telefono=strlen($telefono);
$lungh_partenza=strlen($partenza);
$lungh_richiesta=strlen($richiesta);
$lungh_messaggio=strlen($messaggio);
// inserisci qui il tuo indirizzo email
$receiverMail="hidestar@email.it";
// lettura dell'indirizzo IP
$ip = getenv("REMOTE_ADDR");
// formattazione del messaggio ( \n per le messe a capo )
$messaggioformat= "Messaggio da: $nome ($ip)\nEmail: $email\n$messaggio";
#controllo la mail, imposto una variabile che poi confronto con email
$pattern = "/^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][a-z0-9-]+\.)+([a-z]{2,})$/i";
#controllo che i campi siano superiori a 3 caratteri e non vuoti
if (($nome == "") || ($cognome == "")|| ($email == "")|| ($telefono == "")||($partenza== "")|| ($richiesta== "")|| ($messaggio == ""))
{
echo "<div id='msg' class='msgSENT'>Compila tutti i campi! <p id='close'>[click to close]</p></div>";}
else if (($lungh_nome <= 3)or($lungh_cognome <= 3) or ($lungh_partenza <= 3) or ($lungh_richiesta <=3)or($lungh_messaggio <= 3) )
{
echo "<div id='msg' class='msgKO'>I campi devono contenere almeno 3 caratteri! <p id='close'>
[click to close]</p></div>";
}
else if (!preg_match($pattern,$email))
{
echo "<div id='msg' class='msgKO'><b>\"$email\"</b>non è una email valida! <p id='close'>
[click to close]</p></div>";
}
else {
// invio del messaggio
$messaggio = "<html>
<head>
<title>Dati compilazione modulo</title>
</head>
<body>
From:<br><br>NOME-<b>$nome</b><br><br>COGNOME-<b>$cognome</b><br><br>
TELEFONO-<b>$telefono</b><br><br>EMAIL-<b>$email</b><br><br>PARTENZA-<b>$partenza</b><br><br>RICHIESTA-<b>$richiesta</b><br><br>MESSAGGIO-<b>"
.htmlspecialchars($messaggio )."</b>";
// questi parametri settano la modalità di invio HTML
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($receiverMail,$messaggioformat,$messaggio, $headers);
echo "<div id='msg' class='msgSENT'>Il messaggio e' stato inviato!Riceverai una risposta il prima possibile!<p id='close'>[click to close]</p></div>"; }
?>
Vorrei davvero capire come fare perche' da solo non ci riesco proprio .
Grazie:dipser: :dipser: :dipser: