Ti sei perso il VI Convegno gt? Forse puoi rimediare... www.convegnogt.it X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Consigli ed aiuti per il sito
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti

Consigli ed aiuti per il sito Suggerimenti, indicazioni e pareri; supporto, spunti e idee

Hey Amico Visitatore,
Condividi con noi le tue idee e la tua conoscenza Aprendo una nuova discussione nella sezione Consigli ed aiuti per il sito


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 21-03-10, 15:35   #1 (permalink)
User Newbie
 
Data di registrazione: Aug 2009
Messaggi: 5
Inserire campo per allegati in form contatti

Salve a tutti,
avrei bisogno cortesemente di un aiuto relativo al seguente form contatti, avrei necessità di un inserire un campo che permetta all'utente di sfogliare nel proprio hard disk, di allegare un file e trovarmelo poi nella mia posta mail.
Qualche anima pia può darmi una mano.
Allego file HTML del form:

<h2>Modulo per informazioni e contatti<br />
</h2>
<form method="post" action="formInvio.php">
<input type="hidden" name="require" value="email,nominativo,privacy" />
<input type="hidden" name="contenitore" value="mia@mail.it" />
<input type="hidden" name="invia_Dati" value="REMOTE_HOST,HTTP_USER_AGENT" />

<tr>
<div align="center">
<table width="564" border="0">
<tr>
<td width="134" height="28"><span class="Stile43"><span class="Stile60">Nome
e Cognome (*)</span></span></td>
<td width="414"><font face="Arial" size="3" color="#000000">
<input name="nominativo" type="text" id="nominativo" style="background-color: #ffffff; border-color: #333333" size="20" />
</font></td>
</tr>
<tr>
<td height="28"><span class="Stile39 Stile59"><span class="Stile43 Stile60">Email a cui ricevere risposta (*)</span></span></td>
<td><font face="Arial" size="3" color="#000000">
<input type="text" name="email" size="20" style="background-color: #ffffff; border-color: #333333" />
</font></td>
</tr>
<tr>
<td height="28"><span class="Stile43 Stile60">Indirizzo</span></td>
<td><font face="Arial" size="3" color="#000000">
<input name="indirizzo" type="text" id="indirizzo" style="background-color: #ffffff; border-color: #666666" size="20" />
</font></td>
</tr>
<tr>
<td height="28"><span class="Stile59"><span class="Stile43 Stile60">Città/Provincia</span></span></td>
<td><font face="Arial" size="3" color="#000000">
<input name="Città" type="text" id="Città" style="background-color: #ffffff; border-color: #666666" size="20" />
</font></td>
</tr>
<tr>
<td height="28"><span class="Stile43 Stile60">Telefono</span></td>
<td><font face="Arial" size="3" color="#000000">
<input name="Telefono" type="text" id="Telefono" style="background-color: #ffffff; border-color: #333333" size="20" />
</font></td>
</tr>
<tr>
<td height="76"><span class="Stile43 Stile60">Informazioni</span></td>
<td><textarea name="Altre_info" cols="31" rows="4" id="Altre_info" style="background-color: #ffffff; border-color: #333333">Inserire richieste</textarea></td>
</tr>
<tr>
<td height="146"><span class="Stile43 Stile60">Accetto il trattamento dei dati personali (*)</span></td>
<td><input type="checkbox" name="privacy" id="privacy" />
<br />
<textarea name="Privacy" cols="31" rows="7" readonly="readonly" id="Privacy" style="background-color: #CCCCCC; border-color: #333333; color: #000000; font-family: Georgia, 'Times New Roman', Times, serif; font-style: oblique;">INFORMATIVA AI SENSI DELL'ART. 10, LEGGE N.675/1996 I dati che ci invierete tramite questo form, via email o telefonicamente permetteranno a ARTEVINUM di contattarVi e fornirVi una risposta alle Vostre domande. I dati verranno custoditi su supporti informatici e trattati nel pieno rispetto delle misure di sicurezza a tutela della Vostra riservatezza.
I dati verranno usati per la finalità e con la modalità precedentemente indicata nel rispetto della Legge 675 del 31 Dicembre 1996.
Vedi Tutela della Privacy</textarea></td>
</tr>
<tr>
<td><span class="Stile43 Stile60">Codice di verifica antispam (*) </span></td>
<td><img src="/securimage/securimage_show.php" alt="CAPTCHA Image" align="bottom" id="captcha" /><a href="#" onClick="document.getElementById('captcha').src = '/securimage/securimage_show.php?' + Math.random(); return false"><img src="securimage/images/refresh.gif" alt="refresh" border="0" /></a><br />
<input type="text" name="captcha_code" size="10" maxlength="6" /></td>
</tr>
</table>
<br />
</div>
</tr>
<tr>
<td><div align="center">

</div>
<br />
<p align="center">
<input type="submit" />
<input type="reset" />
</p>
<hr />
<p class="Stile43">I campi contrassegnati con <span class="Stile54">(*)</span> sono obbligatori<br />
</p>
<p class="Stile43">La compilazione di questo form non comporta nessun impegno di acquisto ma solo una risposta più rapida . </p></td>
</tr>
</form>

e file formInvio.php

<?php
/*include_once $_SERVER['DOCUMENT_ROOT'] . '/securimage/securimage.php';*/
include("securimage.php");
$securimage = new Securimage();

if ($securimage->check($_POST['captcha_code']) == false) {
// the code was incorrect
// handle the error accordingly with your other error checking

// or you can do something really basic like this
die('Attenzione codice captcha a 4 cifre non corretto premere il tasto Indietro e riprovare.');
}
?>
<?
/*
formail completo, è possibile aggiungere qualunque campo
è sufficiente inserire le due pagine in un punto qualunque
del proprio dominio.
by linkbruttocane
*/

//INIZIO PARAMETRI DA SETTARE OBBLIGATORIAMENTE
/************************************************** **************************************/
// Il parametro $delay indica i secondi di ritardo impiegati
// a riportare l'utente all'home page dopo che abbia
// compilato correttamente il modulo

$delay = "5";

// Il parametro $url indica la pagina alla quale si viene
// rimandati una volta compilato correttamente il modulo
// io ho messo una homepage, ma potrebbe essere qualunque altra pagina

$url = "miosito.it";

// Il parametro $provenienza indica le possibili provenienze dei dati: indicare
// il proprio dominio nella forma mostrata dall'esempio

$provenienza = array ();

// Il parametro $esclusioni vi permette di NON consentire
// messaggi da un indirizzo mail specificato
// sia appartenente ad un dominio, ovvero
// 'tutte le mail che appartengono ad un dominio'
// od anche a singoli account

$esclusioni = array ('*@quellochetipare.com', 'nomechetipare@dominio.com', 'altro@dominio.com');


//FINE PARAMETRI DA SETTARE OBBLIGATORIAMENTE
/************************************************** **************************************/

$email = $_POST['email'];

$versione_form = "stabile";

function print_error($reason,$type = 0) {
global $versione_form;
build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet);
if ($type == "missing") {
?>
<body bgcolor='#FFFFFF'>
<p align='center'><font face='Georgia, Times New Roman, Times, serif' color='#990000' size='+2'><br>
Il modulo non puo'
essere inviato per le seguenti ragioni</font></p>
<br>
<p align='center'><font face='Georgia, Times New Roman, Times, serif' size='2' color='#990000'>
<?
echo $reason."\n";
?>
</font>
<p align='center'><font face='Georgia, Times New Roman, Times, serif' size='+1' color='#990000'>Premere il pulsante <input type="button" value="indietro" onClick="history.back();">
e riprovare.</font></p>
<?
} else { // every other error
?>
Il modulo non puo' essere inviato per le seguenti ragioni:<p align='center'>
<?
}
echo "<br><br>\n";

exit;
}

function check_banlist($esclusioni, $email) {
if (count($esclusioni)) {
$allow = true;
foreach($esclusioni as $banned) {
$temp = explode("@", $banned);
if ($temp[0] == "*") {
$temp2 = explode("@", $email);
if (trim(strtolower($temp2[1])) == trim(strtolower($temp[1])))
$allow = false;
} else {
if (trim(strtolower($email)) == trim(strtolower($banned)))
$allow = false;
}
}
}
if (!$allow) {
print_error("Stai utilizzando un <b>indirizzo email escluso.</b>");
}
}


function check_referer($provenienza) {
if (count($provenienza)) {
$found = false;
$temp = explode("/",getenv("HTTP_REFERER"));
$referer = $temp[2];
for ($x=0; $x < count($provenienza); $x++) {
if (eregi ($provenienza[$x], $referer)) {
$found = true;
}
}
if (!getenv("HTTP_REFERER"))
$found = false;
if (!$found){
print_error("Provieni da un <b>dominio non autorizzato.</b>");
error_log("[FormMail.php] Illegal Referer. (".getenv("HTTP_REFERER").")", 0);
}
return $found;
} else {
return true; //
}
}
if ($provenienza)
check_referer($provenienza);

if ($esclusioni)
check_banlist($esclusioni, $email);


function parse_form($array) {
// build reserved keyword array
$reserved_keys[] = "required";
$reserved_keys[] = "redirect";
$reserved_keys[] = "email";
$reserved_keys[] = "require";
$reserved_keys[] = "contenitore";
$reserved_keys[] = "titolo";
$reserved_keys[] = "bgcolor";
$reserved_keys[] = "text_color";
$reserved_keys[] = "link_color";
$reserved_keys[] = "vlink_color";
$reserved_keys[] = "alink_color";
$reserved_keys[] = "title";
$reserved_keys[] = "missing_fields_redirect";
$reserved_keys[] = "invia_Dati";
if (count($array)) {
while (list($key, $val) = each($array)) {

$reserved_violation = 0;
for ($ri=0; $ri<count($reserved_keys); $ri++) {
if ($key == $reserved_keys[$ri]) {
$reserved_violation = 1;
}
}

if ($reserved_violation != 1) {
if (is_array($val)) {
for ($z=0;$z<count($val);$z++) {
$content .= "$key: $val[$z]\n";
}
} else {
$content .= "$key: $val\n";
}
}
}
}
return $content;
}


function mail_it($content, $titolo, $email, $contenitore) {
mail($contenitore, $titolo, $content, "From: $email\r\nReply-To: $email\r\nX-Mailer: DT_formmail");
}


function build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet) {
if ($style_sheet)
echo "<LINK rel=STYLESHEET href=\"$style_sheet\" Type=\"text/css\">\n";
if ($title)
echo "<title>$title</title>\n";
if (!$bgcolor)
$bgcolor = "#FFFFFF";
if (!$text_color)
$text_color = "#80000";
if (!$link_color)
$link_color = "#0000FF";
if (!$vlink_color)
$vlink_color = "#FF0000";
if (!$alink_color)
$alink_color = "#000088";
if ($background)
$background = "background=\"$background\"";
echo "<body bgcolor=\"$bgcolor\" text=\"$text_color\" link=\"$link_color\" vlink=\"$vlink_color\" alink=\"$alink_color\" $background>\n\n";
}

$contenitore_finale = split(',',$contenitore);
for ($i=0;$i<count($contenitore_finale);$i++) {
$contenitore_to_test = trim($contenitore_finale[$i]);
if (!eregi("^[_\\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\\.)+[a-z]{2,3}$", $contenitore_to_test)) {
print_error("<b>Occorre un indirizzo email valido per continuare ($contenitore_to_test) </b>");
}
}


if ($required)
$require = $required;

if ($require) {

$require = ereg_replace( " +", "", $require);
$required = split(",",$require);
for ($i=0;$i<count($required);$i++) {
$string = trim($required[$i]);

if((!(${$string})) || (!(${$string}))) {

if ($missing_fields_redirect) {
header ("Location: $missing_fields_redirect");
exit;
}
$require;
$missing_field_list .= "Il campo relativo a <b>$required[$i]</b> deve essere compilato <br>\n\n";
}
}

if ($missing_field_list)
print_error($missing_field_list,"missing");
}


if (($email) || ($EMAIL)) {
$email = trim($email);
if ($EMAIL)
$email = trim($EMAIL);
if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $email)) {
print_error("il suo <b>indirizzo email</b> non risulta essere valido");
}
$EMAIL = $email;
}






$content = parse_form($HTTP_POST_VARS);




if ($invia_Dati) {
$invia_Dati = ereg_replace( " +", "", $invia_Dati);
$splitta_Dati = split(",",$invia_Dati);
$content .= "\n------ variabili utente ------\n";
for ($i=0;$i<count($splitta_Dati);$i++) {
$string = trim($splitta_Dati[$i]);
if ($splitta_Dati[$i] == "REMOTE_HOST")
$content .= "REMOTE HOST: ".$REMOTE_HOST."\n";
else if ($splitta_Dati[$i] == "REMOTE_USER")
$content .= "REMOTE USER: ". $REMOTE_USER."\n";
else if ($splitta_Dati[$i] == "REMOTE_ADDR")
$content .= "REMOTE ADDR: ". $REMOTE_ADDR."\n";
else if ($splitta_Dati[$i] == "HTTP_USER_AGENT")
$content .= "BROWSER: ". $HTTP_USER_AGENT."\n";
}
}


if (!$titolo)
$titolo = "Modulo dal sito";

mail_it(stripslashes($content), stripslashes($titolo), $email, $contenitore);


if ($redirect) {
header ("Location: $redirect");
exit;
} else {
print "<body bgcolor='#FFFFFF'>

<p align='center'><font face='Georgia' size='4' color='#800000'>Grazie per averci
contattato.</font></p><p align='center'><font face='Georgia' size='4' color='#800000'>Riceverete
risposta all'indirizzo da voi indicato $email<br><br>...Ritorno automatico alla Home page in corso....</font></p><meta http-equiv='refresh' content='$delay; url=$url'>

<p align='center'>&nbsp;</p>

</body>
";
echo "<br><br>\n";

exit;
}

// <---------- fine ----------> //
?>

Grazie in anticipo a tutti

Ultima modifica di Ermitage : 21-03-10 15:38.
Ermitage non in linea  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Segnalo this Post!OKNO this Post!
Rispondi citando
Rispondi
Tags: , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 01:19.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.