Analyse script php des requêtes

WRInaute occasionnel
Bonjour, j'ai besoin de votre aide pour analyser un petit bout de code qui permet de récupérer la requête d'un internaute venant de google.
Ce code bloque ma page est affiche une page blanche, je pense qu'il y a une erreur mais je ne sais pas où...

Code:
$google_str = '/^http:\/\/www.google\.([a-z]{2,3})|(co\.[a-z]{2})\//i';

// Si le visiteur viens d'une page google
if ( preg_match( $google_str,$_SERVER['HTTP_REFERER']) ) {

   // on récupère la QUERY_STRING du REFERER
   $url_array = parse_url($_SERVER['HTTP_REFERER']);
   parse_str($url_array['query'],$variables);

   // les mots clé se trouvent dans la variable 'q'
   $keywords = urldecode($variables['q']);

   echo 'Vous venez de Google avec les mots clés suivant :' . $keywords;
}

Merci d'avance pour votre aide

EDIT: j'ai pas précisé qu'il s'agit d'un code que j'ai trouvé sur ce forum (2005 je crois)
 
WRInaute occasionnel
Voici tout mon code:

Code:
<?php if (blablabla) {

$google_str = '/^http:\/\/www.google\.([a-z]{2,3})|(co\.[a-z]{2})\//i';

// Si le visiteur viens d'une page google
if ( preg_match( $google_str,$_SERVER['HTTP_REFERER']) ) {

 // on récupère la QUERY_STRING du REFERER
   $url_array = parse_url($_SERVER['HTTP_REFERER']);
   parse_str($url_array['query'],$variables);

   // les mots clé se trouvent dans la variable 'q'
   $keywords = urldecode($variables['q']);
?>

<p>Vous avez utilisez <b><?php $keywords; ?></b> pour tomber sur notre site</p>
<?php include ('blabla.php');
}

else {?>

<p>Vous n'avez pas fait de recherche sur google</p>
<?php include (blabla.php');

}
}
?>
 
WRInaute occasionnel
Bon eh bien maintenant ça marche :D

Si je viens pas de google ça me dit 'vous n'avez pas fait de recherche sur google" mais si je viens de google ça me dit: "Vous avez utilisez pour tomber sur notre site"

Il manque la requête :(

EDIT; ca marche avec echo mais pas avec pas avec du php dans le html comme j'avais fais
 
WRInaute accro
$google_str = '/^https{0,1}:\/\/www.google/i';

largement suffisant pour savoir si ça viens de google (le reste a droite est compliqué pour rien) "s{0,1}" au cas ou tu tombe sur un referer https.

<p>Vous avez utilisez <b><?php echo $keywords; ?></b> pour tomber sur notre site</p>

sans echo point de sortie vers le buffer apache
 
WRInaute accro
php ecrit dans un buffer (une mémoire tampon) qui est un genre d'élément partagé avec apache. A la fin du traitement le buffer est envoiyé par apache vers le navigateur au travers de la conection.
 
Discussions similaires
Haut