E questo che problemi potrebbe introdurre dal punto di vista della robustezza?
E questo che problemi potrebbe introdurre dal punto di vista della robustezza?
Vivrò una vita intera e fortunatamente morirò una volta sola
A me nessuno se vuoi provare http://www.photoman.altervista.org/guestbook/form.php disinserisci js e non compila un campo obbligatorio, poi inviamelo ma ti ritornerà indietro ancora con lo stesso codice. A me non ha mai dato problemiOriginariamente inviato da pyotrex
E questo che problemi potrebbe introdurre dal punto di vista della robustezza?
semplicemente che ripetendo sempre lo stesso codice da inserire si facilita la vita agli spammer. Non hai mai trovato un sito che ti ripropone lo stesso captcha. Anzi, di solito ti viene detto che se non riesci a leggerlo in modo certo, di fare un refresh che ti verra' riproposta un'altra immagine.Originariamente inviato da pyotrex
E questo che problemi potrebbe introdurre dal punto di vista della robustezza?
Diciamo che chiamandosi la variabile "rand_code" si presumeva fosse random. Poi ovviamente le cose sono come vi pare, a me va bene lo stesso. Ed era pure in risposta a qualcuno che diceva che il codice era un pochino statico e semplice....
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
C'è l'ha da molto tempo e da quando l'ho messo anche con "rand_code" sono finite le email-spam automatiche, è comodo per chi sbaglia la compilazione del form.Originariamente inviato da piero.mac
semplicemente che ripetendo sempre lo stesso codice da inserire si facilita la vita agli spammer. Non hai mai trovato un sito che ti ripropone lo stesso captcha. Anzi, di solito ti viene detto che se non riesci a leggerlo in modo certo, di fare un refresh che ti verra' riproposta un'altra immagine.
Diciamo che chiamandosi la variabile "rand_code" si presumeva fosse random. Poi ovviamente le cose sono come vi pare, a me va bene lo stesso. Ed era pure in risposta a qualcuno che diceva che il codice era un pochino statico e semplice....
![]()
Avevo le sessioni anche nei campi ma quando il form tornava indietro nei campi apparivano nomi inseriti in di vecchi form e non i nomi appena inseriti, non ho mai capito il perchè.
qualcuno puo' postare gli ultimi codici sicuri?Originariamente inviato da Braco
C'è l'ha da molto tempo e da quando l'ho messo anche con "rand_code" sono finite le email-spam automatiche, è comodo per chi sbaglia la compilazione del form.
Avevo le sessioni anche nei campi ma quando il form tornava indietro nei campi apparivano nomi inseriti in di vecchi form e non i nomi appena inseriti, non ho mai capito il perchè.
Io arrivai alle prime 7-8 pagine, ora non so piu' quale codice e' migliore.
Ad ogni modo con tutto il captcha riescono a inviarmi le email di spam
Per favore potresti darci più informazioni?Ad ogni modo con tutto il captcha riescono a inviarmi le email di spam
Vivrò una vita intera e fortunatamente morirò una volta sola
Questo è il mio da quando l'ho messo fine dello spam, come vedi ha una $SESSION che mantiene lo stesso codice in caso di errato invio:Originariamente inviato da Tr|k`Tr4k
qualcuno puo' postare gli ultimi codici sicuri?
Io arrivai alle prime 7-8 pagine, ora non so piu' quale codice e' migliore.
Ad ogni modo con tutto il captcha riescono a inviarmi le email di spam
Codice PHP:
<?php
//Captca-image
session_start();
if (empty($_SESSION['rand_code'])){
$str = "";
$length = 0;
$caratteri = "abcdefghijkmnprstuvwxyz123456789"; /* Caratteri che appaiono come immagine */
for ($i = 0; $i < 4; $i++){ /* il 4 indica il numero di caratteri-immagine che appaiono */
$str .= $caratteri{rand(0,32)};
}
$_SESSION['rand_code'] = $str;
}
$imgX = 60;//Sposta a dx i caratteri-immagine
$imgY = 18;//Sposta in alto i caratteri-immagine
$image = imagecreatetruecolor(60, 20);
$backgr_col = imagecolorallocate($image, 238,239,239);//Colore di sfondo
$border_col = imagecolorallocate($image, 208,208,20);//Colore del bordo
$text_col = imagecolorallocate($image, 46,60,31);//Colore dei caratteri-immagine
imagefilledrectangle($image, 0, 0, 60, 20, $backgr_col);//Cambiando i 4 valori appare un'ombra nera e si può creare un'effetto rilievo o incassato del rettangolo
imagerectangle($image, 0, 0, 59, 19, $border_col);// Sposta il bordino colorato del rettangolo
$font = "courbi.ttf";
$font_size = 14;//Dimensione dei caratteri-immagine
$angle = 0;//Ruota obliqui i caratteri-immagine
$box = imagettfbbox($font_size,$angle,$font,$_SESSION['rand_code']);
$x = (int)($imgX - $box[4]) / 2;//Sposta a sx i caratteri-immagine
$y = (int)($imgY - $box[5]) / 2;//Sposta in alto i caratteri-immagine
imagettftext($image,$font_size,$angle,$x,$y,$text_col,$font,$_SESSION['rand_code']);
header("Content-type: image/jpeg");
imagejpeg($image);
imagedestroy ($image);
//Fine Captca-image
?>
Si anche io ne metto uno e dopo 10-20 giorni siamo punto e daccapo perche gli spammer riescono ad inviare il modulo lo stesso.Originariamente inviato da Braco
Questo è il mio da quando l'ho messo fine dello spam, come vedi ha una $SESSION che mantiene lo stesso codice in caso di errato invio:
Codice PHP:
<?php
//Captca-image
session_start();
if (empty($_SESSION['rand_code'])){
$str = "";
$length = 0;
$caratteri = "abcdefghijkmnprstuvwxyz123456789"; /* Caratteri che appaiono come immagine */
for ($i = 0; $i < 4; $i++){ /* il 4 indica il numero di caratteri-immagine che appaiono */
$str .= $caratteri{rand(0,32)};
}
$_SESSION['rand_code'] = $str;
}
$imgX = 60;//Sposta a dx i caratteri-immagine
$imgY = 18;//Sposta in alto i caratteri-immagine
$image = imagecreatetruecolor(60, 20);
$backgr_col = imagecolorallocate($image, 238,239,239);//Colore di sfondo
$border_col = imagecolorallocate($image, 208,208,20);//Colore del bordo
$text_col = imagecolorallocate($image, 46,60,31);//Colore dei caratteri-immagine
imagefilledrectangle($image, 0, 0, 60, 20, $backgr_col);//Cambiando i 4 valori appare un'ombra nera e si può creare un'effetto rilievo o incassato del rettangolo
imagerectangle($image, 0, 0, 59, 19, $border_col);// Sposta il bordino colorato del rettangolo
$font = "courbi.ttf";
$font_size = 14;//Dimensione dei caratteri-immagine
$angle = 0;//Ruota obliqui i caratteri-immagine
$box = imagettfbbox($font_size,$angle,$font,$_SESSION['rand_code']);
$x = (int)($imgX - $box[4]) / 2;//Sposta a sx i caratteri-immagine
$y = (int)($imgY - $box[5]) / 2;//Sposta in alto i caratteri-immagine
imagettftext($image,$font_size,$angle,$x,$y,$text_col,$font,$_SESSION['rand_code']);
header("Content-type: image/jpeg");
imagejpeg($image);
imagedestroy ($image);
//Fine Captca-image
?>
Avevo pensato che riescono a vedere il method del form e quindi leggere che la pagina dopo l'invio del modulo era per esempio chiamata invia.php e quindi avevo pensato di nascondere il nome della pagina successiva ma senza idee per farlo.
Ad ogni modo puoi postare sia il codice del form che quello della pagina successiva?
Almeno vedo di aggiungerlo al mio per vedere se riesco
Grazie
Ciao
Bisogna vedere cosa intendi per spammer, è ovvio che uno può mandartelo ma non in modo automatico, se c'è il codice captcha i messaggi deve inserirli manualmente, questo sotto è il codice in ins.php che elabora i dati inseriti nel codice.
Codice PHP:
...
if (empty($validator))
$errore .= "Inserire il Codice";
else
session_start();
//Controlla che il codice Captca inserito corrisponda a quello che appare sopra
if ($_SESSION['rand_code'] != $_POST['validator'])
$errore .= "Codice errato!";
if ($errore)
echo $errore;
if ($errore):
$tab_ins;
$meta="<META http-equiv=\"REFRESH\" content=\"2; url=http://www.tuosito.it/pagina_form\">";
else:
echo "GRAZIE, IL TUO MESSAGGIO E' STATO INSERITO!";
$meta="<META http-equiv=\"REFRESH\" content=\"2; url=http://www.tuosito.it\">";
session_destroy();
...
Io sto cercando di fare l'action del form in javascript come mi è stato consigliato, mi è stato anche suggerito di mettere la funzione che fa l'action in un file esterno. Essendo 0 in javascript cerco nella sezione dedicata di questo forum.Avevo pensato che riescono a vedere il method del form e quindi leggere che la pagina dopo l'invio del modulo era per esempio chiamata invia.php e quindi avevo pensato di nascondere il nome della pagina successiva ma senza idee per farlo.
Vivrò una vita intera e fortunatamente morirò una volta sola