PHP, top des recherches : Savez-vous ?
17 messages
• Page 1 sur 2 • 1, 2
Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics
- babou
- Nouveau WRInaute

- Messages: 42
- Inscription: 19 Juil 2005
PHP, top des recherches : Savez-vous ?
Bonjour à tous,
J'aimerais faire un top des recherches sur mon site.
Le problème, c'est que je ne sais pas comment m'y prendre.
Je peux ajouter une table "search_words" et y mettre tous les mots recherchés.
Mais comment procèder ensuite ?
Savez-vous s'il existe une requête qui extrait les mots les plus utilisés dans le champ de la table ?
J'aimerais faire un top des recherches sur mon site.
Le problème, c'est que je ne sais pas comment m'y prendre.
Je peux ajouter une table "search_words" et y mettre tous les mots recherchés.
Mais comment procèder ensuite ?
Savez-vous s'il existe une requête qui extrait les mots les plus utilisés dans le champ de la table ?
- M.o.n.d.i.a.n.i
- WRInaute occasionnel

- Messages: 317
- Inscription: 9 Juil 2005
Re: PHP, top des recherches : Savez-vous ?
babou a écrit:Je peux ajouter une table "search_words" et y mettre tous les mots recherchés.
Mais comment procèder ensuite ?
Savez-vous s'il existe une requête qui extrait les mots les plus utilisés dans le champ de la table ?
Connais tu SQL? Si oui ca ne devrait pas poser de problemes. Sinon documentes toi la dessus ca s'apprends tres vite et c'est tres interessant.
-

yeca - WRInaute impliqué

- Messages: 953
- Inscription: 2 Sep 2003
- Code: Tout sélectionner
SELECT recherche, COUNT(recherche) AS nb FROM `search_words` GROUP BY recherche ORDER BY nb DESC
si tu connais si bien mysql, ça devrait pas te poser problème...
-

CaYuS - WRInaute impliqué

- Messages: 601
- Inscription: 14 Juil 2005
Une petite proposition du comment procéder, il y en a plein d'autres.
Tu peux ajouter une table search_words qui contiendra tes words et tes hits.
A chaque nouvelle recherche sur ton site, tu incrémentes la valeurs de hits du mot associé, s'il existe dans la table, sinon tu l'insère avec la valeur hits à 1.
Ensuite, supposons que tu veuilles connaître le top 10 de tes mots les plus recherchés, tu peux utiliser la requête suivante :
Edit : Oups, j'ai été précédé
Edit 2: Requette corigée, cf ci dessous.
Tu peux ajouter une table search_words qui contiendra tes words et tes hits.
A chaque nouvelle recherche sur ton site, tu incrémentes la valeurs de hits du mot associé, s'il existe dans la table, sinon tu l'insère avec la valeur hits à 1.
Ensuite, supposons que tu veuilles connaître le top 10 de tes mots les plus recherchés, tu peux utiliser la requête suivante :
- Code: Tout sélectionner
SELECT *
FROM `search_words`
ORDER BY `hits` DESC
LIMIT 0 , 10
Edit : Oups, j'ai été précédé
Edit 2: Requette corigée, cf ci dessous.
Dernière édition par CaYuS le Lun Aoû 29, 2005 12:20, édité 2 fois.
-

yeca - WRInaute impliqué

- Messages: 953
- Inscription: 2 Sep 2003
ce n'est pas la même technique.
moi ça n'impose que de faire un INSERT à chaque recherche.
Mais par contre tu te retrouves vite avec une table avec 50000 entrées.
par contre pour ta requête ce serait pas plutôt :

moi ça n'impose que de faire un INSERT à chaque recherche.
Mais par contre tu te retrouves vite avec une table avec 50000 entrées.
par contre pour ta requête ce serait pas plutôt :
- Code: Tout sélectionner
SELECT *
FROM `search_words`
ORDER BY `hits` DESC
LIMIT 0 , 10
- Nikos38
- Nouveau WRInaute

- Messages: 44
- Inscription: 23 Juin 2005
yeca a écrit:ce n'est pas la même technique.
moi ça n'impose que de faire un INSERT à chaque recherche.
Mais par contre tu te retrouves vite avec une table avec 50000 entrées.
Oui c'est pour ça que l'autre solution est plus adaptée.
-

doic - WRInaute passionné

- Messages: 1147
- Inscription: 7 Nov 2003
Ce que demande Babou, c'est peut-être, comment récupérer les mot-clés depuis le referrer???
Dans ce cas, il faudrait traiter cas par cas les différents sites que tu qualifierais de "moteur", et récupérer la chaine qui se trouve après le query? / q? / requete? <- là c'est aussi à faire au cas par cas, selon le moteur...
sinon, tu as des logiciels de stats qui le font.
Dans ce cas, il faudrait traiter cas par cas les différents sites que tu qualifierais de "moteur", et récupérer la chaine qui se trouve après le query? / q? / requete? <- là c'est aussi à faire au cas par cas, selon le moteur...
sinon, tu as des logiciels de stats qui le font.
-

yeca - WRInaute impliqué

- Messages: 953
- Inscription: 2 Sep 2003
Nikos38 a écrit:yeca a écrit:ce n'est pas la même technique.
moi ça n'impose que de faire un INSERT à chaque recherche.
Mais par contre tu te retrouves vite avec une table avec 50000 entrées.
Oui c'est pour ça que l'autre solution est plus adaptée.
bah non, parce que ça te force aussi à récupérer la valeur de chaque mot clé à chaque fois.
et avec cette méthode, tu ne peux pas insérer aussi l'IP pour vérification d'un flood, ou la date et l'heure si jamais tu veux suivre dans le temps
- babou
- Nouveau WRInaute

- Messages: 42
- Inscription: 19 Juil 2005
Merci beaucoup pour vos réponses, c'est exactement cela que je voulais faire.
Si j'ai bien compris :
- Tu selectionnes toutes les lignes du champ "recherche", tu les comptes (ça devient "nb").
- Ensuite tu fais un GROUP BY sur le champ "recherche". Quel effet ça a ?
- Puis tu tris par "nb", ça je comprends.
- Code: Tout sélectionner
SELECT recherche, COUNT(recherche) AS nb FROM `search_words` GROUP BY recherche ORDER BY nb DESC
Si j'ai bien compris :
- Tu selectionnes toutes les lignes du champ "recherche", tu les comptes (ça devient "nb").
- Ensuite tu fais un GROUP BY sur le champ "recherche". Quel effet ça a ?
- Puis tu tris par "nb", ça je comprends.
- M.o.n.d.i.a.n.i
- WRInaute occasionnel

- Messages: 317
- Inscription: 9 Juil 2005
Tu fais group by pour compter combien de fois un meme mot revient.
En fait tu devrais plutot ajouter une colonne que tu incrementes à chaque fois qu'un mot est demandé
En fait tu devrais plutot ajouter une colonne que tu incrementes à chaque fois qu'un mot est demandé
- babou
- Nouveau WRInaute

- Messages: 42
- Inscription: 19 Juil 2005
yeca a écrit:Nikos38 a écrit:yeca a écrit:ce n'est pas la même technique.
moi ça n'impose que de faire un INSERT à chaque recherche.
Mais par contre tu te retrouves vite avec une table avec 50000 entrées.
Oui c'est pour ça que l'autre solution est plus adaptée.
bah non, parce que ça te force aussi à récupérer la valeur de chaque mot clé à chaque fois.
et avec cette méthode, tu ne peux pas insérer aussi l'IP pour vérification d'un flood, ou la date et l'heure si jamais tu veux suivre dans le temps
C'est vrai.
Avec le méthode de "hits" je ne peux plus faire ça
17 messages
• Page 1 sur 2 • 1, 2
Formation recommandée sur ce thème :
Formation REFERENCEMENT naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- rewriting de top recherches
- top 50 des recherches google
- Analyse du top 10 des recherches google 2008
- Yahoo le top des recherches pour 2006
- Top Site PHP?
- Cherche un script php avec top 100
- Le top des hébergeurs PHP, MySQL + Nom de Domaine
- Recherche script top list PHP qui ne nuie pas au réf
- mes mots clés dans les top 5 et top 20 .Comment interpréter
- Trouver script Top Referrer ou Top Site à mettre sur blog ?
Consultez la description détaillée des produits ou services de Google suivants : Google Trends Recherche Personnalisée
- Trouver la position d'un site dans Google
Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Google, pour certains mots-clés recherchés. - Trouver la position d'un site dans Yahoo
Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Yahoo, pour certains mots-clés recherchés.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


