Vous êtes ici Codes PHP et MySQL > Tag-cloud > Tag cloud basé sur les recherches

 

Tag cloud basé sur les recherches

Ce tag cloud (nuage de tag) cherche les termes de recherches les plus utilisés et les affiche à l'interieur d'un tag cloud. Ce script a des tables d'exemples avec des enregistrements tout prés. Remplisser vos logs de connection MySQL et lancer le script.
 
nixi54
Site de l'auteur voir
[5] sources en PHP voir
Code vu 25746 fois
Enregistré le 18 Mars 2008
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Tag cloud basé sur les recherches
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Tag cloud basé sur les recherches                         */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts358-PHP.htm              */
/* Auteur         : nixi54                                                    */
/* Date édition   : 18 Mars 2008                                              */
/* Website auteur : http://www.phpsources.org                                 */
/*                                                                            */
/******************************************************************************/



$txt='<p>Un tag cloud qui utilise MySQL</p><p>';

// connection sql

$db=mysql_connect('localhost','yourusername','yourpasswd') or die(mysql_error())
;
mysql_select_db('yourbase');


// Pour commencer, nous allons creer une table avec qulques requetes

mysql_query(
"CREATE TEMPORARY TABLE searchterms (term VARCHAR(150) NOT NULL PRIMARY" .
" KEY,nbsearches BIGINT UNSIGNED NOT NULL DEFAULT 1,datesearch DATE NOT NULL)",
$db) or die(mysql_error());

// insertion des enregistrements
mysql_query(
"INSERT INTO searchterms SET term='1st" .
" term',nbsearches=20,datesearch='2007-11-10'",$db);
mysql_query(
"INSERT INTO searchterms SET term='2nd" .
" term',nbsearches=40,datesearch='2007-11-11'",$db);
mysql_query(
"INSERT INTO searchterms SET term='3rd" .
" term',nbsearches=25,datesearch='2007-12-10'",$db);
mysql_query(
"INSERT INTO searchterms SET term='4th" .
" term',nbsearches=200,datesearch='2007-12-01'",$db);
mysql_query(
"INSERT INTO searchterms SET term='5th" .
" term',nbsearches=2,datesearch='2007-11-02'",$db);
mysql_query(
"INSERT INTO searchterms SET term='6th" .
" term',nbsearches=45,datesearch='2007-12-10'",$db);
mysql_query(
"INSERT INTO searchterms SET term='7th" .
" term',nbsearches=120,datesearch='2007-12-11'",$db);
mysql_query(
"INSERT INTO searchterms SET term='8th" .
" term',nbsearches=767,datesearch='2007-11-12'",$db);
mysql_query(
"INSERT INTO searchterms SET term='9th" .
" term',nbsearches=220,datesearch='2007-12-12'",$db);
mysql_query(
"INSERT INTO searchterms SET term='10th" .
" term',nbsearches=10,datesearch='2007-11-13'",$db);
mysql_query(
"INSERT INTO searchterms SET term='11th" .
" term',nbsearches=520,datesearch='2007-12-14'",$db);

// Creation d'une table temporaire qui contient les terms de recherche avec le
// nbre de click par terme
mysql_query(
"CREATE TEMPORARY TABLE tempsearch SELECT term,nbsearches FROM searchterms" .
" ORDER BY datesearch DESC LIMIT 100",$db) or die(mysql_error());

// creation d'une autre table temporaire avec le resultat et la limite que l'on
// souhaite (10 dans l'exemple)
mysql_query(
"CREATE TEMPORARY TABLE tempsearchsorted SELECT term FROM tempsearch ORDER BY" .
" nbsearches DESC LIMIT 10",$db) or die(mysql_error());

// prend le maximum de recherches par terme
$q=mysql_query(
"SELECT max(nbsearches) FROM searchterms,tempsearchsorted WHERE" .
" tempsearchsorted.term=searchterms.term",$db) or die(mysql_error());
$sum=mysql_result($q,);


// Selection des enregistrements ordonné par nom
$q=mysql_query(
"SELECT searchterms.term,searchterms.nbsearches FROM" .
" searchterms,tempsearchsorted WHERE tempsearchsorted.term=searchterms.term" .
" ORDER BY searchterms.term ASC",$db) or die(mysql_error());

while($l=mysql_fetch_assoc($q)) {
$txt.= '<a href="/yourpage.php?item='.urlencode($l['term']).
'" style="font-size:'.($l['nbsearches']/$sum 0.9).'em">'.$l['term'].'</a> ';

}
$txt.='</p>';

echo $txt;

mysql_close($db);

?>

 

Fonctions du code

: Alias de la fonction exit() - (PHP 4, PHP 5)
: Ouvre une connexion à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: - (PHP 4, PHP 5, PECL mysql:1.0)
: Sélectionne une base de données MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Retourne un champ d'un résultat MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Lit une ligne de résultat MySQL dans un tableau associatif - (PHP 4 >= 4.0.3, PHP...
: Encode une chaîne en URL - (PHP 4, PHP 5)
: Affiche une chaîne de caractères - (PHP 4, PHP 5)
: Ferme la connexion MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Tag-cloud

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
        Publicité