Recaptcha invia dati al submit

  • Creatore Discussione Creatore Discussione anton
  • Data di inizio Data di inizio

anton

Nuovo Utente
16 Lug 2012
27
0
1
Salve a tutti, sono ancora qui a chiedere un consiglio per risolvere un problema, questa volta con il recaptcha di google. Il problema è questo, ho inserito il recaptcha in un form php con metodo post, all'invio ricevo i dati d'iscrizione su un mio indirizzo mail oltre ad inserirli in un db, la cosa funziona solo che sulla mail che ricevo con in dati dell'iscritto mi arriva anche questo:

Recaptcha Challenge Field : 03AHJ_Vus_brx_AOFe4HhgoHV00OXu9YPd_TmmT9-ferovOubTGi5HfBlVN8DZbnZJcECCpEMT9-Wmg7bxjOesIn2W0hhi_vmansisFP51W6sdNy-ONxGF2XIXJ8LG6qNvvO2V2O8oNIetVj_KRmxXpwjhyb55FNqBzg
Recaptcha Response Field : relatGi McGrev

Sembra tutta la libreria del recaptcha mentre sull'ultima riga compaiono le due parole inserite al momento dell'iscrizione. Il form l'ho provato sia su server locale (windows) che sul server esterno (linux), il risultato è lo stesso.

Mi chiedo se è normale e se è possibile evitarlo, ho chiesto anche a Google ma risposte niente. Sono anche disposto a cambiare sistema se me ne consigliate qualcuno o se ritenete che questo non sia valido.
Grazie
 
ciao
un po' di pazienza, non uppare dopo alcune ore.
non ho mai usato recaptcha di google quindi non so cosa risponderti, ma vedrai che qualcuno lo farà.
 
ciao
cosa intendi per verifica del form?
se intendi la verifica dei singoli campi (es. correttezza dell'indirizzo email) prova a guardare in giro per il forum in quanto il problema è stato trattato diverse volte, se trovi ma non ti soddisfa allora posta.
se invece intendi di "cercare" di evitare lo spam è un'altra cosa.
ricordati che però lo spam ha due origini: spamboot da sofware e allora un captcha può andare (quasi sempre per ora) bene e uno spam che viene fatto manina manina e allora non ci sono capcha che tengono (i russi sono esperti in manina manina).
io mi sono fatto un captcha mio (anche se non so quanto valido sia, comunque dal mio form contatti non ricevo molto spam, forse ci scrivono poco).
se vuoi farti un captcha manina manina posso darti delle indicazioni (i metodi possono essere disparati)
 
Ciao, quello che mi interessa non è la verifica dei campi, per esempio nel form che ho realizzato ho impostato un campo di verifica dell'indirizzo mail e funziona benissimo. Il mio problema riguarda lo spam (o il possibile spam) ero contrario ad appoggiarmi ad un servizio esterno tipo il recaptcha che oltre al problema che ho presentato rallenta pure il caricamento della pagina. Il programma che utilizzo mi dà la possibilità di inserire un captcha locale e con questo potrei risolvere il problema dello spam da software, mi giunge nuovo il "manina manina", saranno almeno 10 anni che sono uscito dal giro, nel senso che gestivo dei siti miei che poi ho lasciato, e in dieci anni di assenza mi sono accorto che quello che sapevo dei linguaggi è preistoria, se puoi aiutarmi con il manina manina te ne sarei grato.
 
ciao
questo è un esempio, poi ne ho fatto un altro dove il numero viene visualizzato con una sequenza di immagini
PHP:
<?php
ob_start();//mi serve per l'header location
session_start();
$num_1=rand(100,999);
$num_2=rand(10,99);
$_SESSION['capt']=$num_1+$num_2;
//.....
if($_POST['invia']){
	if($_SESSION['capt']==$_POST['capt']){//i due numeri coincidono
		//fai tutto quello che devi fare
	}else{
		header('location: dove_vuoi.php');
		exit();
	}
}
?>
<form action="" method="post">
<!--tutti gli altri campi di input-->
<!--per ora è più difficile che un soft spamboot riesca ad interpretare e quindi inviare-->
<?php echo "se sei umano esegui $num_1 + $num_2 =";?><input name="capt" type="text">
<br>
<input name="invia" type="submit" id="invia" value="invia">
</form>
<?php
ob_end_flush();
?>

guarda che dico difficile, non impossibile. la guerra tra spammer e antispammer è continua (come tra i costruttori di casseforti e gli scassinatori)
 
Vediamo se ho capito e se le mie reminescenze del php sono giuste.

La prima parte quella che inizia con il tag "<?php " và allinizio della pagina senza farci alcun intervento;

Invece da questo tag"?>" inzia il mio form

Di nuovo dal secondo "<?php " lasciare invariato
Giusto?
 
ciao
grosso modo è così come dici
l'importante che ob_start sia la prima istruzione in assoluto e ob_end_flush l'ultima in quanto c'è un header che riinvia in caso di errore e l'header non vorrebbe alcun output html prima di lui (la visualizzazione del form è un out html)
poi la generazione del numero/i casuali conviene che sia prima del form (le variabili devono essere inizializzate prima dell'uso)
poi mettere la parte if(isset(post)){...} e poi il form o viceversa è lo stesso.
poi se ti interessa posto zippata quello che avevo fatto con le immagini (è decisamente più bella graficamente), devi avere un po' di pazienza perche la sto aggiornando
 
ciao
grosso modo è così come dici
l'importante che ob_start sia la prima istruzione in assoluto e ob_end_flush l'ultima in quanto c'è un header che riinvia in caso di errore e l'header non vorrebbe alcun output html prima di lui (la visualizzazione del form è un out html)
poi la generazione del numero/i casuali conviene che sia prima del form (le variabili devono essere inizializzate prima dell'uso)
poi mettere la parte if(isset(post)){...} e poi il form o viceversa è lo stesso.
poi se ti interessa posto zippata quello che avevo fatto con le immagini (è decisamente più bella graficamente), devi avere un po' di pazienza perche la sto aggiornando

Ok la fretta non è mai una buona consigliera, proverò intanto a seguire le tue istruzioni per quanto riguarda questo script, farò delle prove integrando il tuo script ai due (captcha e form) miei e ti farò sapere ormai per domani. Una sola cosa in questo punto dello script: header('location: dove_vuoi.php'); al posto di "dove vuoi" devo inserire qualcosa?
 
Ok la fretta non è mai una buona consigliera, proverò intanto a seguire le tue istruzioni per quanto riguarda questo script, farò delle prove integrando il tuo script ai due (captcha e form) miei e ti farò sapere ormai per domani. Una sola cosa in questo punto dello script: header('location: dove_vuoi.php'); al posto di "dove vuoi" devo inserire qualcosa?

è la pagina cui verrà reindirizzato in caso i due numeri non coincidano ;)
 
ciao
ecco lo schema di captcha con le immagini. è evidente che con le immagini puoi sbizzarrirti come vuoi (te le puoi fare con un programma per le immagini)
se si muovono forse per in reader è più difficile leggerle (forse di più di quelle solo deformate con il captcha usuale)
nellp zip ho messo il file php per simulare il form e la cartella con i numeri immagine.
 

Allegati

Scusate se non mi son fatto vivo in questi giorni, ho avuto un crash al computer e solo adesso sono riuscito a risolvere. Avevo fatto appena in tempo a scaricare il file zip di Borgo, riprendo le prove e posto i risultati.
 
Scusate se non mi son fatto vivo in questi giorni, ho avuto un crash al computer e solo adesso sono riuscito a risolvere. Avevo fatto appena in tempo a scaricare il file zip di Borgo, riprendo le prove e posto i risultati.

Grazie Borgo ho risolto utilizzando lo script con le immagini, per il momento l'ho provato in locale funziona benissimo, appena avrò tutto pronto lo pubblicherò.
 

Discussioni simili