Salve,
ho bisogno di passare un indirizzo email con metodo get.
Di seguito un esempio:
Siccome voglio mascherare l'indirizzo email, ho deciso di criptarla e poi decriptarla nel file elabora.phpcodice:<a href="elabora.php?email=mario.rossi@libero.it" target="_blank">
Per far ciò ho utilizzato il seguente codice:
Il problema è che il dato criptato può contenere caratteri che il metodo get interpreta nel solito modo come ad esempio ? =codice:<?php function decryptIt( $q ) { $cryptKey = 'hfsidufhs938832hdd'; $qDecoded = rtrim( mcrypt_decrypt( MCRYPT_RIJNDAEL_256, md5( $cryptKey ), base64_decode( $q ), MCRYPT_MODE_CBC, md5( md5( $cryptKey ) ) ), "\0"); return( $qDecoded ); } $email_criptata = $_GET['email']; $email = decryptIt($email_criptata); //decripto l'email $email_pulita = htmlspecialchars($email, ENT_QUOTES, 'UTF-8'); //evito gli script malevoli echo $email_pulita; ?>
Quindi alla fine sembra che questa soluzione non va bene.
Esiste un modo per risolvere il problema? considerando il fatto che voglio comunque evitare che qualcuno che si intende di programmazione possa inserire nel link del codice malevolo?
grazie.

Rispondi quotando