Δευτέρα, 18 Μαρτίου 2013

Δημιουργία ασφαλούς φόρμας επικοινωνίας με Image validation

Ένα από τα μέτρα κατά του spam που πρέπει κάθε φόρμα επικοινωνίας να χρησιμοποιεί είναι το Image Validation. Με την επιβεβαίωση του κωδικού σε μια φόρμα επικοινωνίας ασφαλίζετε την φόρμα από bots αλλά και από κακόβουλους χρήστες που με απλή ανανέωση της σελίδας επικοινωνίας στον browser του να στέλνουν μαζικά emails.

Πως λειτουργεί;

Πρακτικά δημιουργεί ένα image με τυχαίους αλφαριθμητικούς χαρακτήρες που ο χρήστης πρέπει να γράψει ώστε να γίνει η αποστολή μέσω της φόρμας επικοινωνίας.

Πως μπορώ να το εισάγω στις φόρμες μου;

Η εισαγωγή της εικόνας επιβεβαίωσης μπορεί να γίνει με τα παρακάτω βήματα:

α. Στην φόρμα επικοινωνίας σας θα πρέπει να κάνετε εισαγωγή στην κορυφή της σελίδας τον παρακάτω κώδικα:

session_start();
if (!isset($_SESSION['phrase'])){
mt_srand((double) microtime() * 1000000);
$_SESSION['phrase'] = substr(strtoupper(md5(mt_rand())), 0, 6);
}

β. Κατεβάστε το αρχείο authenticate.php από εδώ . Το αρχείο αυτό δημιουργεί τις εικόνες με τους τυχαίους χαρακτήρες. Για να το εισάγετε στην φόρμα σας δηλώστε το κανονικά ως φωτογραφία: <img src="authenticate.php">

γ. Δημιουργήστε ένα text field με όνομα 'phrase' στο οποίο ο χρήστης πρέπει να επιβεβαιώνει τον κωδικό

δ. Αμέσως μετά την εισαγωγή των στοιχείων από το χρήστη και μόλις πρίν την αποστολή του email με τα στοιχεία πρέπει να δηλώσετε τον παρακάτω κώδικα:

if ($_SESSION['phrase'] != $_POST['human']){
exit();
}

ε. Μετά την αποστολή του μηνύματος δηλώστε τον παρακάτω κώδικα:

unset ($_SESSION['phrase']);

Αν η φόρμα επικοινωνίας σας χρησιμοποιεί και άλλες σελίδες (π.χ. mailer) για την αποστολή του email τότε τοποθετήστε τον κώδικα στα αντίστοιχα σημεία ανάλογα με την λειτουργία που εκτελεί το κάθε script.

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου