Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1

    Proteggere indirizzi email da crawler

    Buon giorno a tutti.
    Fin'ora sul sito ho pubblicato, indirizzi email in chiaro.
    Qualcuno a sollevato il problema, come da titolo del post.
    Potreste aiutarmi cortesemente a risolvere questo problema che sicuramente voi avete incontrato e risolto?
    Grazie mille.

  2. #2
    Ho trovato questo script qui http://blog.html.it/23/02/2010/come-...-agli-spammer/

    Codice PHP:
    function ord_mail($email){
        
    $o = Array();
        foreach(
    str_split(trim($email)) as $v){
            
    $o[] = "& #".ord($v).";";
        } return 
    implode('',$o);
    }
    echo 
    ord_mail("user@domain.tld"); 
    in pratica come lo utilizzo se mi converte l'indirizzo email in entità html?
    grazie.

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Imho. Pubblicare gli indirizzi 'codificati' non è una buona soluzione visto che per mandare una mail dovrai avere il codice che decodifica nella pagina stessa. Seppoi l'indirizzo mail in chiaro non serviva ad aprire il cliente mail dell'utente che voleva mandarne una allora non conveniva neanche metterlo nella pagina html.

    Di più se io, da utente del tuo sito, inserisco il mio indirizzo mail non è per che venga dato a chiunque vorrebbe mandarmi un messaggio. Io considero l'indirizzo mail che ho dato quando mi sono iscritto qui come mezzo di comunicazione tra lo staff di questo forum ed io.

    Dovresti fare come su questo forum per i messaggi privati. Cioè invii da php con l'indirizzo preso da db il messaggio al destinatario con la funzione mail di php (o qualunque class tipo phpMailer tu possa avere). Poi sarà lui a decidere se procedere o meno con il mittente dandogli o no il suo indirizzo.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #4
    buon giorno.
    allora.
    1) gli indirizzi mail devono per forza essere presenti e quindi visibili nelle varie pagine del sito
    2) ho previsto che se cliccano sull'indirizzo si apre outlook, ma potrei anche togliere questa opzione

    Per quello che mi dici in seguito si è tutto giusto, ed infatti per altri tipi di comunicazione utilizzo phpMailer, ma la procedura che devo seguire è quella dei due punti sopra citati.

    Quindi, in finale, come faccio a cautelarmi contro sti crawler maledetti?

    Ti ringrazio della tua disponibilità.

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,447
    Non so se sia proprio fattibile perché sarebbe più argomento Javascript che PHP, in caso prendi l'idea e chiedi nella sezione Javascript:
    nel db prevedi (ma penso sia già così) un'associazione userid - username - email
    sulla pagina, invece di mostrare gli indirizzi email mostri un link fatto così
    <a href="#" onclick="funzione_mail(userid)">Invia una mail a username</a>

    funzione_mail() sarà una funzione javascript che prende come parametro userid, invia a sua volta tale userid ad uno script php tramite AJAX, lo script php resituisce l'indirizzo email relativo a userid preso dal db, infine funzione_mail() prende tale indirizzo e lo usa per attivare mailto.

    In questo modo l'indirizzo email non è visibile sulla pagina e puoi comunque inviare l'email all'utente, ammesso che tutta la parte javascript sia effettivamente fattibile.

  6. #6
    quindi scusate se insisto per capire meglio e vi ringrazio come sempre.
    Il crawler di turno, non va a prelevare l'indirizzo mail che sta tra i due tag ossia "antonio@libero.it":
    Codice PHP:
     <a href="javascript:void(0)" onclick="invia_mail(indirizzo-mail)">antonio@libero.it</a
    ma l'indirizzo inserito nell'attributo href:
    Codice PHP:
    <a href="antonio@libero.it" onclick="invia_mail(indirizzo-mail)">invia mail a username</a
    giusto?
    Grazie mille.

  7. #7
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,447
    No, i crawler useranno diverse espressioni regolari per cercare match con ciò che è scritto nel codice html della pagina per prendere qualsiasi cosa abbia l'aspetto di un indirizzo email ovunque si trovi.

  8. #8
    potrebbe essere un idea fare in questo modo?
    nell'attributo href prevedo il "mailto" per aprire outlook al click, ma codificando l'indirizzo email con la funzione qui di seguito
    Codice PHP:
    $email "mioindirizzo@tiscali.it";

    //funzione presa su internet, ma non funziona
    function protectMail($email) {$risultato '';$s $email;for ($i 0$i strlen($s); $i++) {    $risultato .= '&#' ord(substr($s$i1)) .';';}return $risultato;} 
    Poi tra i due tag<a></a> sostituisco l'indirizzo testuale con una immagine utilizzando questa funzione:
    Codice PHP:
    function createTextToPng($email){
    include_once 
    $_SERVER['DOCUMENT_ROOT'].'/script_41380/gdi.php';
    $image = new GDI_image($email);//<--- sostituire con $email
    $image->file_name ='king-kong';
    $image->font_name $_SERVER['DOCUMENT_ROOT'].'/script_41380/London-Tube.ttf';
    $image->font_size =12;
    $image->pad =20;
    $image->font_color '#000';
    $image->border_options 0;//1
    $image->outline_color '#ff00ff';
    $image->shadow true;
    $image->shadow_offset =0;//8
    $image->save_to_file true;
    $image->save();
    echo 
    '<a href="mailto:'.protectMail($email).'"><img src="'$image->save() .'"></a>';

    Ho provato ad utilizzare queste due funzioni, ma la prima non converte l'indirizzo in codice ASCII, risultando cosi in chiaro, invece la seconda genera l'indirizzo in formato immagine png.
    Domanda: perché la prima funzione non converte ogni carattere in codice ascii?

    grazie mille.

  9. #9
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Quote Originariamente inviata da ANTAGONIA Visualizza il messaggio
    buon giorno.
    allora.
    1) gli indirizzi mail devono per forza essere presenti e quindi visibili nelle varie pagine del sito
    Perché per forza ? Che cosa non andrebbe se tu dovessi andare a leggere l'indirizzo mail nel tuo db quando occorre ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  10. #10
    il sito ha un DB, si è vero, ma non mi va di avere delle pagine che avendo solo testo, debbano accedere ad un DB.
    Sono pagine stupide, quindi ho preferito che siano statiche.

    Però ti chiedo: qual'è la differenza nell'estrapolare da DB gli indirizzi email?
    grazie ancora.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.