robertino_salemi
05-02-2014, 09:00
Salve a tutti,
uso sempre la stessa sintassi e codice per la realizzazione del modulo contatti, l'ho applicata in diversi siti web, ma in uno di questi lo spam arriva sempre!
Ho cambiato struttura del codice per le varie verifiche
Ho cambiato il codice di sicurezza, attualmente ho inserito il codice reCaptcha
I messaggi di SPAM non fanno altro che arrivare ugualmente.
Vi posto il codice:
//CHIAVE privata e pubblica sono state dichiarate in un altro file
if(isset($_GET["upload"]) and $_GET["upload"]==1){
//load recaptcha file
require_once('libraries/captcha/recaptchalib.php');
//check recaptcha fields
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if($resp->is_valid){
if($_POST['nome']==NULL){ echo '<div class="warning">Campo nome vuoto</div>';}
elseif($_POST['mail']==NULL){ echo '<div class="warning">Campo email vuoto</div>';}
elseif($_POST['messaggio']==NULL){ echo '<div class="warning">Messaggio testo vuoto</div>';}
else {
$messaggio="Hai ricevuto un nuovo messaggio:
Nome: ".$_POST['nome']."
Telefono: ".$_POST['telefono']."
Email: ".$_POST['mail']."
Messaggio: ".stripslashes($_POST['messaggio']);
$a = mail($email_sito_web, "Messaggio da $nome_sito_web", $messaggio, "From: ".$_POST['nome']." <".$_POST['mail'].">") or print ("<script> alert('Errore invio dell'e-mail!')</script>");
echo '<div class="success">Messaggio inviato correttamente</div>'; }
} else {
echo '<div class="errore">Errore nell\'invio o messaggio di sicurezza errato</div>';
}
} ?>
<script type="text/javascript"> var RecaptchaOptions = { theme : 'clean' }; </script>
<form id="two" name="modulo" method="POST" action="index.php?lang=it&page=7&upload=1" onSubmit="return formCheck(this)">
<fieldset id="personal">
<legend>Modulo contatti</legend>
<label>Nome</label>
<input name="nome" type="text" size="35" value="<?php echo (isset($_POST['nome']) ? $_POST['nome'] : ''); ?>"/>
<br />
<label for="firstname">Telefono</label>
<input name="telefono" type="text" size="35" value="<?php echo (isset($_POST['telefono']) ? $_POST['telefono'] : ''); ?>"/>
<br />
<label for="mail">Email</label>
<input type="text" name="mail" size="35" value="<?php echo (isset($_POST['mail']) ? $_POST['mail'] : ''); ?>">
<br />
<label for="message">Messaggio</label>
<textarea name="messaggio" cols="45" rows="8"><?php echo (isset($_POST['messaggio']) ? $_POST['messaggio'] : ''); ?></textarea>
<br /><br />
<center>
<?php
// load recaptcha file
require_once('libraries/captcha/recaptchalib.php');
// display recaptcha test fields
echo recaptcha_get_html($publickey);
?>
</center>
<br /><br />
<center><input id="button2" type="submit" value="Invia" title="Invia"></center>
</fieldset>
</form>
uso sempre la stessa sintassi e codice per la realizzazione del modulo contatti, l'ho applicata in diversi siti web, ma in uno di questi lo spam arriva sempre!
Ho cambiato struttura del codice per le varie verifiche
Ho cambiato il codice di sicurezza, attualmente ho inserito il codice reCaptcha
I messaggi di SPAM non fanno altro che arrivare ugualmente.
Vi posto il codice:
//CHIAVE privata e pubblica sono state dichiarate in un altro file
if(isset($_GET["upload"]) and $_GET["upload"]==1){
//load recaptcha file
require_once('libraries/captcha/recaptchalib.php');
//check recaptcha fields
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if($resp->is_valid){
if($_POST['nome']==NULL){ echo '<div class="warning">Campo nome vuoto</div>';}
elseif($_POST['mail']==NULL){ echo '<div class="warning">Campo email vuoto</div>';}
elseif($_POST['messaggio']==NULL){ echo '<div class="warning">Messaggio testo vuoto</div>';}
else {
$messaggio="Hai ricevuto un nuovo messaggio:
Nome: ".$_POST['nome']."
Telefono: ".$_POST['telefono']."
Email: ".$_POST['mail']."
Messaggio: ".stripslashes($_POST['messaggio']);
$a = mail($email_sito_web, "Messaggio da $nome_sito_web", $messaggio, "From: ".$_POST['nome']." <".$_POST['mail'].">") or print ("<script> alert('Errore invio dell'e-mail!')</script>");
echo '<div class="success">Messaggio inviato correttamente</div>'; }
} else {
echo '<div class="errore">Errore nell\'invio o messaggio di sicurezza errato</div>';
}
} ?>
<script type="text/javascript"> var RecaptchaOptions = { theme : 'clean' }; </script>
<form id="two" name="modulo" method="POST" action="index.php?lang=it&page=7&upload=1" onSubmit="return formCheck(this)">
<fieldset id="personal">
<legend>Modulo contatti</legend>
<label>Nome</label>
<input name="nome" type="text" size="35" value="<?php echo (isset($_POST['nome']) ? $_POST['nome'] : ''); ?>"/>
<br />
<label for="firstname">Telefono</label>
<input name="telefono" type="text" size="35" value="<?php echo (isset($_POST['telefono']) ? $_POST['telefono'] : ''); ?>"/>
<br />
<label for="mail">Email</label>
<input type="text" name="mail" size="35" value="<?php echo (isset($_POST['mail']) ? $_POST['mail'] : ''); ?>">
<br />
<label for="message">Messaggio</label>
<textarea name="messaggio" cols="45" rows="8"><?php echo (isset($_POST['messaggio']) ? $_POST['messaggio'] : ''); ?></textarea>
<br /><br />
<center>
<?php
// load recaptcha file
require_once('libraries/captcha/recaptchalib.php');
// display recaptcha test fields
echo recaptcha_get_html($publickey);
?>
</center>
<br /><br />
<center><input id="button2" type="submit" value="Invia" title="Invia"></center>
</fieldset>
</form>