Titre: Requête Google
Date: Octobre 2004
Language: PHP / MySQL
Description: Ce code permet de récupérer l’éventuelle requête Google qui a permis d’arriver à cette page
<?php function google_search() { $referer = $_SERVER['HTTP_REFERER']; // si le referer n'est pas google if( substr( $referer, 11, 7 ) != 'google.' ) return false; // si on ne trouve pas q= if( ( $pos = strpos( $referer, 'q=' ) ) === false ) return false; // extraction de la recherche $google = substr( $referer, $pos + 2 ); if( ( $pos = strpos( $google, '&' ) ) !== false ) $google = substr($google, 0, $pos); $search = array( '+', '%C3%A9', '%C3%A8', '%C3%AA', '%C3%AB', // é è ê ë '%C3%A1', '%C3%A0', '%C3%A2', '%C3%A4', // á à â ä '%C3%BA', '%C3%B9', '%C3%BC', '%C3%BB', // ú ù ü û '%C3%AD', '%C3%AC', '%C3%AE', '%C3%AF', // í ì î ï '%C3%B3', '%C3%B2', '%C3%B4', '%C3%B6', // ó ò ô ö '%2C', '%3A', '%3B', '%3F', '%21', // , : ; ? ! '%2B', '%2F', '%5E', '%3D', '%25', // + / ^ = % '%C2%B4', '%60', '%7E', // ´ ~ ¨ '%40', '%23', '%7C', '%26', // @ # | & '%22', '%27', // " ' '%28', '%29', '%5B', '%5D', '%7B', '%7D', // ( ) [ ] { } '%24', '%C2%A3', '%C2%AC', '%C2%A2' // $ £ ¬ ¢ ); $replace = array( ' ', 'é', 'è', 'ê', 'ë', 'á', 'à', 'â', 'ä', 'ú', 'ù', 'ü', 'û', 'í', 'ì', 'î', 'ï', 'ó', 'ò', 'ô', 'ö', ',', ':', ';', '?', '!', '+', '/', '^', '=', '%', '´', '~', '¨', '@', '#', '|', '&', '"', '\'', '(', ')', '[', ']', '{', '}', '$', '£', '¬', '¢' ); return str_replace( $search, $replace, $google ); } ?>
La fonction renvoie la requête ou false (en cas d’erreur où si le visiteur ne vient pas de google).
Laisser un commentaire