LES MOTS CLEFS DE TOUT TEXTE À PLACER SUR UN SITE INTERNET

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 3 févr. 2008 à 23:06
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018 - 25 janv. 2010 à 10:09
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/45617-les-mots-clefs-de-tout-texte-a-placer-sur-un-site-internet

jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
25 janv. 2010 à 10:09
Comment on peut "virer" une telle ... 'chose' ???
j'étais très très débutant !!!

et ça ne sert qu'a prendre de la place sur le serveur !

SOS Modérateur ou Webmaster !!!
prière d'enlever cette "source" ... d'ailleurs elle est à sec !!
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
18 mai 2009 à 17:45
Il serait URGENT de vire cette "source" car elle est vraiment moche !
et en plus elle n'est pas assez viable !!!

merci de faire le nécessaire !
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
14 nov. 2008 à 20:36
OUI, la partie petit nettoyage fait des trucs en double !
j'ai essayé de traiter des fichiers <OOo> et .RTF et autres et j'ai laissé ces lignes parce que .... je me suis dis que c'était peut-être pas inutile ;-))
Je vais me pencher sur preg_split, mais je ne peux rester assis très longtemps et je n'ai pas de portable pour "travailler" au lit !

mais je me suis lancé dans les programmes JAVA !!! c'est peut-être dépassé aussi ?
LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009
13 nov. 2008 à 17:06
Est-ce que la source affichee est a jour ?
Je n'ai pas vu le code qui parcours tout le site :o)

Par contre, je remarque que ta fonction "petit-nettoyage" fait un peu des aller-retours...

Exemple:
$text = htmlentities($text); // pour enlever le formatage HTML
.../...
$text = strtr($text,"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿ","AAAAAAACEEEEIIIIDNOOOOOOUUUUYbsaaaaaaaceeeeiiiidnoooooouuuyyby"); // on enleve les accents
// les trucs de formatages
$text = str_replace("é","e",$text);
$text = str_replace("è","e",$text);
$text = str_replace("à","a",$text);
$text = str_replace("ù","u",$text);
$text = str_replace("â","a",$text);
$text = str_replace("ô","o",$text);
$text = str_replace("ê","e",$text);
$text = str_replace("û","u",$text);
.../...

D'abord, htmlentities va remplacer les caracteres accentues en é and co.
Ensuite, tu fais un strtr qui enleve les accents (mais il n'y en a plus a cause du htmlentities).
Et enfin, tu remplaces les é and co. par les memes non accentues.

Tu as aussi plusieurs str_replace qui changent diversent choses en " " (espace) dont un avec un tableau en entree... Pourquoi ne pas virer tous les autres et augmenter la taille de ton tableau (encore qu'utiliser le split de LaurentKOogar serait encore mieux (ou un preg_split si tu te sens :O) )).

Tu peux probablement simplifier tout ca...
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
13 nov. 2008 à 16:18
bon, j'ai tout changé mais je ne sais pas si quelqu'un regarde ce que j'ai mis !
sniff sniff
je rentre de clinique et y a rien !!

bouh bouh hou houh hou !
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
27 oct. 2008 à 10:33
Bon, il y a pas mal de choses à changer ici. Mais bon !
Je vais m'y mettre. à bientôt donc !

déjà ligne 21 !!! il manque > depuis le début !!!
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
2 juin 2008 à 10:15
LeFauve42 a écrit :
Une bonne amelioration serait que ton programme parse toute l'arborescence de ton site et affiche une table avec les resultats de toutes les pages.
*******************************************
L'idée m'a parue géniale ... mais comme je ne suis pas un pro, j'ai tout mis en vrac et rien ne fonctionne plus dans mon nouveau code (que je ne place pas ici bien entendu !!! )
Je reprends difficilement mais je vais m'accrocher et essayer d'être à la hauteur de CodeSources !
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
29 févr. 2008 à 20:11
Bon, ok, vous pouvez vous offusquer de cette absence de suite sur ce sujet.
Des GROS soucis me sont tombés sur la tête et j'ai du repousser toute action informatique de mes occupations § Ponctuellement ! Je reviens bientôt !

Merci de votre mansuétude !
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
14 févr. 2008 à 15:02
Bonjour à tous !

j'ai un petit (GROS) souci avec ma bécane que je viens de passer à Intel-Core-Duo avec 2Go de mémoire sur une nouvelle carte mère, le délire TOTAL (pour moi !!!)!

donc je pense que je ne vais pas pouvoir améliorer mon code avant le début de la semaine prochaine (avec strip_tags() sans doute, je vais voir cela de près ,LEFAUVE42 !).

Tu tiendras le coup jusque là QISBUG ???

En attendant tu peux aller visiter mes sites ![ voir profil ;-)) ]
alphanono Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 25 mai 2009
14 févr. 2008 à 14:42
10 ans c'est plus qu'il n'en faut pour devenir un crack du PHP ... Alors accroches toi !
cs_qisbug Messages postés 19 Date d'inscription mardi 18 avril 2006 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 10:54
Ah oui, ça je l'avais fait avant que tu le dises ! Mais moi je suis à un niveau très très très bas. Je lis des choses, j'essaie petit à petit, je patauge beaucoup, je n'ai que les forums pour grappiller des infos (personne, personne d'autre avec qui échanger) alors quand je trouve quelque chose de tout fait, comme dans CodesSources, j'essaie d'appliquer (je n'y arrive pas toujours mais au moins je z'yeute) , je modifie quelques éléments éventuellement, mais utiliser une fonction où je ne comprends pas grand chose ... ben non, j'peux pas ! Désolé. ma comprenoire a des limites !
Donc merci mais ... j'peux pas ! A part ça, continue à écrire dans les forums . Moi je regarde ! Et p'tête qu'un jour j'y arriverai ... Il me reste encore 10 ans à vivre environ. Alorsssssss ....
LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009
14 févr. 2008 à 10:42
> Quant à la fonction strip_tags()... j'connais pas !

Et bien c'est l'occasion de faire connaissance :o)
Tu vas sur php.net et tu tapes la fonction que tu recherches dans le champs en haut a droite.

Ou pour cette fois, tu peux aller directement la:
http://nl2.php.net/manual/fr/function.strip-tags.php
cs_qisbug Messages postés 19 Date d'inscription mardi 18 avril 2006 Statut Membre Dernière intervention 14 février 2008
13 févr. 2008 à 23:44
à Jadu

Merci, j'ai compris à quoi servait ton code et j'ai réussi ! Sauf que, comme tu le dis, le résultat n'est pas à intégrer en direct. Mais au moins j'ai réussi ! C'est un gros progrès pour moi !

Bonne nuit et à une autre fois !

Quant à la fonction strip_tags()... j'connais pas !

qis
LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009
13 févr. 2008 à 14:31
> Nota : avec les fichiers de chez winword, il faut faire un sacré tri !
> avec les fichiers HTML aussi !

Tu peux peut-etre utiliser la fonction strip_tags()...
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
13 févr. 2008 à 13:54
QISBUG, c'est plutôt une aide pour remplir les <meta> des pages.
Mais la sortie n'est pas directement à insérer, à mon avis, puisqu'il faut tout de même garder une cohérence dans ce qu'on dépose sur internet.
Je m'en sers avec EasyPHP, en local donc, et je rempli les zones dans ma base de données dans la partie idoine de l'enregistrement du document, mais bon, ça c'est ma façon de faire, chacun s'adapte. Ce n'est, je le répète, qu'une AIDE, ce n'est pas un "Je fais tout pour vous"

Nota : avec les fichiers de chez winword, il faut faire un sacré tri !
avec les fichiers HTML aussi !

voila une réponse simple. Content ?
cs_qisbug Messages postés 19 Date d'inscription mardi 18 avril 2006 Statut Membre Dernière intervention 14 février 2008
12 févr. 2008 à 17:56
Bonjour

je suis très intéressé mais il me manque une info de base :

- le fichier .php se met-il à la racine du site ?
- le fichier .html se met-il à la racine du site ? ou dans un article du site ? ou dans les deux ?

J'ai beau fouiller des tutoriaux, je ne trouve pas ces indications donc je suis bloqué. merci à qui pourra me répondre de façon simple !

qis
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
12 févr. 2008 à 11:35
Ben si, maintenant que tu le dis !
la balise
n'est pas fermée !!!

Mais je suis en déplacement ... je reprends cela d'ic à jeudi sans doute !

merci pour l'observation !
alphanono Messages postés 39 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 25 mai 2009
11 févr. 2008 à 15:27
[HS]
Ca gêne personne ça en ligne 21 : "!!! <br / Merci "
/HS
Effectivement, si ça pouvait parcourir l'arborescence, ce serait un mustHave
LeFauve42 Messages postés 239 Date d'inscription vendredi 20 octobre 2006 Statut Membre Dernière intervention 20 avril 2009
11 févr. 2008 à 11:14
$ton_tableau_de_stop_words est un tableau qui contient les mots a ignorer.
Comme disait Laurent, tu as une bonne liste de depart ici pour le remplir:
http://www.ranks.nl/stopwords/french.html

Une bonne amelioration serait que ton programme parse toute l'arborescence de ton site et affiche une table avec les resultats de toutes les pages.
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
4 févr. 2008 à 14:39
ligne 81 : // Ó ce stade nous avons une liste triÚe des mots de 4 lettres

à remplacer par :
// À ce stade nous avons une liste triée des mots
jadu Messages postés 217 Date d'inscription mercredi 26 juillet 2006 Statut Membre Dernière intervention 16 août 2018
4 févr. 2008 à 14:35
CODEFALSE :
merci pour la 1ere partie de ta remarque : je devais être fatigué !
Pour la seconde partie, j'ai volontairement détruit le fichier temporaire puisque je me retrouvais avec un fichier de traitement qui accumulait tous les mots des textes différents traités (au départ) puis après il ne restait que le dernier fier traité, donc l'intérêt m'a paru assez limité, voire nul.
De plus garder ce type d'infos ... le DD sont gros maintenant mais bon ... chacun est libre de garder, j'empêche pas !

LAURENT KOOGAR :
merci pour ""split("[^[:alpha:]]+", $ton_texte_a_traiter);""
mais qu'est donc "$ton_tableau_de_stop_words" ?????
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
4 févr. 2008 à 12:36
o

mais ou est donc je tu il elle !! zolie les mots clés !!

Tiens le meme en 5 lignes, 1000 fois plus rapide et sans en enlevant les stop-words pour avoir des mots clefs pertinant
http://www.ranks.nl/stopwords/french.html

enjoy ;)

<?php
$regs = split("[^[:alpha:]]+", $ton_texte_a_traiter);
// stop words!!
$regs1 = array_diff($regs,$ton_tableau_de_stop_words);
$stats = array_count_values($regs1);
array_multisort($stats, SORT_DESC);
// indice dansun tableau
$tabKey = array_keys($stats); print_r($tabkey)
?>
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
4 févr. 2008 à 10:50
Plusieurs remarques pour ma part :
# if (!isset($_POST['nb_carr']))
# {
# echo "Vous avez choisi les mots de 4 lettres et plus.
Option définie par défaut";
# $nb_car = 4;
# }
# $nb_car = $_POST['nb_car'];

Quoi qu'il arrive, ta valeur ne sera jamais 4, car elle sera écrasée par le $_POST['nb_car']; même s'il est vide. Par ailleur ta phrase ne devrait pas etre ici. Regarde :

if (!empty ($_POST['nb_car'])) // !empty va vérifier si la chaine existe et est différente de vide/nulle/égale à 0
$nb_car = $_POST['nb_car'];
else
$nb_car = 4;

echo 'Vous avez choisi les mots de '.$nb_car.' lettres et plus.
';

Par ailleur, pourquoi écrire dans un fichier si tu l'efface apres ? sauvegarde tes valeurs dans un tableau par exemple, et ensuite tu fait un implode de ton tableau (par exemple).

L'idée de sauvegarder le fichier peut-etre utile si tu t'en sert plus tard. Dans ce cas, met une option "sauvegarder dans un fichier" afin que l'utilisateur choisisse.
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
3 févr. 2008 à 23:06
$a=explode (' ', $text);

ici, tu devrais utiliser preg_split avec une regexp histoire de pouvoir virer la ponctuation en meme temps (enfin decouper selon la ponctuation)

ton while pourrait etre remplace par un for, ca le rendrait plus lisible
Rejoignez-nous