Accueil > Forum > > > > lecture et affichage de fichiers word
lecture et affichage de fichiers word
jeudi 27 février 2003 à 09:01:30 |
lecture et affichage de fichiers word

dolu007
|
je dois réaliser un moteur de recherche et lorsque j'affiche la ligne avec le mot cherché les accents et caractère spéciaux sont écris n'importe comment exemple : recherche du mot navire : Travers'e9e du navire Am'e9lie dans l'oc'e9an Indien}{cgrid0 , p... ...page}{cgrid0 21 par Glaces rencontr'e9es par le navire le }{icgrid0 Saint-Paul}{cgrid0 , page}{cg... Merci de me dire comment faire pour résoudre ce problème!!
|
|
jeudi 27 février 2003 à 10:33:04 |
Re : lecture et affichage de fichiers word

Tortuegeniale
|
Salut
met tes codes de selection et d'affichage, on peut pas résoudre un pb comme ça lol
++
--> http://www.kame-house.org <-- La plus grosse base de données sur les dessins animés des années 80 Site gratuit et sans pub
------------------------------- Réponse au message : -------------------------------
> je dois réaliser un moteur de recherche et lorsque j'affiche la ligne avec le mot cherché les accents et caractère spéciaux sont écris n'importe comment > > exemple : recherche du mot navire : > > Travers'e9e du navire Am'e9lie dans l'oc'e9an Indien}{cgrid0 , p... ...page}{cgrid0 21 par Glaces rencontr'e9es par le navire le }{icgrid0 Saint-Paul}{cgrid0 , page}{cg... > > Merci de me dire comment faire pour résoudre ce problème!!
|
|
jeudi 27 février 2003 à 11:12:27 |
Re : lecture et affichage de fichiers word

dolu007
|
voilà le script complet <?php
//fonction de parcours dans les répertoires function ListFiles($path){ global $files, $exts, $SERVER_NAME; $MyDir = opendir($path); if($MyDir){ while($file=readdir($MyDir)){ if($file[0]==".")continue; $file="$path/$file"; if(is_file($file)){ //retourne le contenu du fichier si l'occurence entre "" est trouvé if(strstr($file, ".php") || strstr($file, ".html") || strstr($file, ".doc"))$files[]=$file; } else{ ListFiles($file); //nouvel appel de la fonction } } closedir($MyDir); } }
//fonction d'affichage du temps de la requete en cours function getmicrotime(){ list($usec, $sec) = explode(" ",microtime()); return (((float)$usec + (float)$sec)); }
//la fonction va chercher le nom du titre dans les fichiers HTML seulement function GiveTitle($filename){ $MyFile = fopen($filename, "r"); $doc = fread($MyFile, filesize($filename)); fclose($MyFile);
if(eregi("<title>(.*)</title>", $doc, $out))return "$out[1]"; else return "[Sans titre]"; }
/****************************************************************************************************************/ /* +------------------------------------+ */ /* | Moteur de recherche - moteur.php | */ /* | par Ludovic Bouet-Leboeuf | */ /* | | */ /* +------------------------------------+ */ /* */ /* Pour utiliser ce script, il vous suffit de placer les noms des repertoires que vous voulez explorer dans le */ /* tableau $data ci dessous. Ensuite, placez le script dans le repertoire de votre choix./* */ /* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */ /****************************************************************************************************************/
$data = array("/home/doc/bouetleb/sommaire/"); //répertoire de la recherche
$start_recherche=getmicrotime(); //remplace < et > par < et > dans la requête $query=str_replace(array("<", ">"), array("<", ">") , trim(stripslashes($query))); $re_query=urlencode($query); //retourne un tableau qui contient les élements de la chaîne séparés par "+" dans la requête $keywords=explode("+", $query);
//segmentation en mot de la requete for($i=0; $i < count($keywords); $i++){ //les mots sont mis "néttoyés" $keywords[$i]=trim($keywords[$i]); //ajoute un antislash devant tous les caractères de la chaine keywords pour déspécialiser les caractères spéciaux $keywords[$i]="\W" . preg_quote($keywords[$i], "/") . "\W"; // "\w" permet de dire tout caractère de mot }
$page=floor($page);//retourne l'entier inférieur du nombre page if(empty($page))$page=0; //détermine si la variable page est affectée $files=array(); //création d'un tableau
if(!empty($query))for($i=0; $i < count($data)/*compte le nb de répertoire*/; $i++) { //appel de fonction.on liste tous les fichiers du répertoire courant ListFiles($data[$i]); } //création du tableau des résultats de la recherche $result=array();
//parcours et lecture des fichiers de la recherche for($i=0; $i < count($files); $i++){ $MyFile = fopen($files[$i], "r"); //la fonction fread lit le fichier $MyFile dans sa totalité $text=stripslashes(strip_tags(fread($MyFile, filesize($files[$i])))); fclose($MyFile);//fermeture du fichier
$blnValue=true; $reg_build=array(); //création du tableau $reg_build for($k=0; $k < count($keywords); $k++){ $reg_keyword="/$keywords[$k]/i"; //récupération des mots clés //recherche des mots dans le contenu du fichier $text if(preg_match($reg_keyword, $text)){ $reg_build[]=$keywords[$k]; } else{ $blnValue=false; break; } }
if($blnValue){ //si $blnvalue=true on effectue la suite
//retourne une chaîne contenant les caractères de tous les éléments //du tableau $reg_build dans le même ordre.Les éléments sont séparés par | (ou) $reg_build="/" . implode("|", $reg_build) . "/i"; $reg_keyword=$reg_build . "i"; //preg_match_all analyse $text pour trouver l'expression $reg_keyword //et mets les résultats dans le tableau $occurences preg_match_all($reg_keyword, $text, $occurences); $result[]=array(0, $files[$i], ""); $pos = 0; for($j=0; $j < count($occurences[0]); $j++){ //retourne la position numérique de la première occurence de $occurences //ds la chaîne de caractères $text $pos = strpos($text, $occurences[0][$j], $pos); if($pos!==false){ $index=count($result) - 1; //substr() retourne une portion de string, spécifiée avec le début start et la longeur length. // à modifier pour afficher toute la ligne $result[$index][2].=" ..." . substr($text, $pos - 50, $len_keyword + 100) . "... "; //incrémente $occurences $pos+=strlen($occurences[0][$j]); } } $result[$index][0]=$j; //preg_replace() analyse "substr($result[$index][2]" pour trouver //l'expression $reg_keyword et remplace les résultas par \\ $result[$index][2]=preg_replace($reg_keyword, "<b>\\0</b>", substr($result[$index][2], 0, 300)); } } //trie le tableau $result par ordre ascendant en comparant normalement les valeurs array_multisort($result, SORT_DESC, SORT_REGULAR); $max_value=$result[0][0]; $how_results = count($result); $max_page=floor(($how_results - 1) / 10) + 1;
if(empty($query))print "Moteur de recherche"; else print "Résultats de la recherche sur $query"; print "</title></head><body><font face=arial size=2>"; print "<form method=post action=$PHP_SELF><table border=0 cellpadding=5 cellspacing=5 width=100% align=center><tr><td>";
print "<td width=100%><font size=2><br>Rechercher</b> :<br><input type=text name=query value=\"$query\"><input type=submit value=Rechercher>"; print "</font></td></tr></table></form>";
print "<table border=0 cellpadding=1 cellspacing=0 width=100% align=center><tr bgcolor=steelblue><td><font color=white size=2 face=arial>Résultats de la recherche sur <b>\"$query\"</b> - $how_results résultats</font></td><td align=right><font color=white size=2 face=arial>La recherche a pris <b>" . round(getmicrotime() - $start_recherche, 2) . "</b> secondes</font></td></tr></table><br><br>";
if(empty($query)){ print "<dl><dt><b>Introduction</b></dt>"; print "<dd>Ce moteur de recherche utilise le langage de script PHP. Pour effectuer une recherche, le script n'utilise pas de base de données. Il va directement explorer le contenu "; print "réel de chaques pages."; print "<dt><b>Opérateurs</b></dt>"; print "<dd>Vous pouvez effectuer une recherche incluant un ou plusieurs <b>ET</b> logique(s) en utilisant le caractère plus (<b>+</b>).<br>Exemple : <b>navire + anglais</b><br><br></dd>"; } else if($how_results==0){ print "<i>Désolé! Auncun document ne correspond à votre requête! Essayez de mieux cibler votre recherche.</i>"; } else{
//utilisation d'une feuille de style ce qui est tout nouveau pour moi!!!! print "<style type=text/css>"; print "A.Moteur{color:black}"; print "A.NavMoteur{color:darkblue;font-size:8pt;font-weight:bold;}"; print "</style>";
if($page > $max_page)$page=$max_page; print "<dl>"; for($i=$page * 10; $i < $page * 10 + 10 && $i < $how_results; $i++){ print "<dt>" . ($i + 1) . ". <a href={$result[$i][1]}> " . GiveTitle($result[$i][1]) . "</a></dt>"; print "<dd>{$result[$i][2]}<br><font face=arial size=1 color=green>{$result[$i][1]} - " . floor($result[$i][0] / $max_value * 100) . "%</font><br><br></dd>"; } print "</dl>";
if($max_page > 1){ print "<table border=0 cellpadding=0 cellspacing=8 align=center>"; print "<tr align=center valign=top>"; print "<td>"; if($page > 0)print "<a class=NavMoteur href=$PHP_SELF?query=$re_query&page=" . ($page - 1) . "><br>Précédent</a>";
print "</td>"; for($i=0; $i < $max_page; $i++){ $the_page=$i + 1; print "<td>"; if($i==$page)print "<br><font color=red><b>$the_page</b></font>"; else print "<a class=Moteur href=$PHP_SELF?query=$re_query&page=$i><br>$the_page</a>"; print "</td>"; } print "<td>"; if($page < $max_page - 1)print "<a class=NavMoteur href=$PHP_SELF?query=$re_query&page=" . ($page + 1) . "><br>Suivant</a>";
print "</td>"; print "</tr>"; print "</table>"; } }
print "<br><table border=0 cellpadding=1 cellspacing=0 width=100% align=center><tr bgcolor=steelblue><td> </td></td></table>"; print "</font></body></html>"; ?>
------------------------------- Réponse au message : -------------------------------
> > Salut > > met tes codes de selection et d'affichage, on peut pas résoudre un pb comme ça lol > > ++ > > --> http://www.kame-house.org <-- > La plus grosse base de données sur les dessins animés des années 80 > Site gratuit et sans pub > > > ------------------------------- > Réponse au message : > ------------------------------- > > > je dois réaliser un moteur de recherche et lorsque j'affiche la ligne avec le mot cherché les accents et caractère spéciaux sont écris n'importe comment > > > > exemple : recherche du mot navire : > > > > Travers'e9e du navire Am'e9lie dans l'oc'e9an Indien}{cgrid0 , p... ...page}{cgrid0 21 par Glaces rencontr'e9es par le navire le }{icgrid0 Saint-Paul}{cgrid0 , page}{cg... > > > > Merci de me dire comment faire pour résoudre ce problème!! >
|
|
Cette discussion est classée dans : lecture, fichiers, affichage, navire, cgrid0
Répondre à ce message
Sujets en rapport avec ce message
Problème lecture de fichiers excels créés en PHP [ par Hades51 ]
Bonjour à tous,Je créé un fichier excel avec la syntaxe suivante ( c'est un exemple ):...$file = fopen("toto.xls","w+");fput($file,"titre1\ttitre2\n")
PHP et lecture de fichiers son [ par Ralph29 ]
Bjr à tous,Voilà je suis en train de me faire un petit site intranet qui me permet de lister le contenu de ma machine en fichier MP3 (je précise que c
[Problème] Lecture de fichiers dans un certain ordre... [ par Nightm4re ]
Bonjour à tous,j'utilise les fonction opendir(), puis readdir() afin de lire les fichiers d'un répertoire. Le problème, c'est que tout est lu dans un
ordre affichage des fichiers [ par yahou29 ]
Bonjour à tous.Je suis actuellement en train de développer un module d'administration de galerie photos.J'aimerai que l'administrateur puisse modifier
lecture fichiers [ par alahyaneali ]
Bonjourje voudrais faire afficher les fichiers d'un repertoire triésdont le nom est supérieur à im_2432345.jpg et inférieur à im_2432445.jpgen utilisa
Affichage de fichiers [ par Zebra1928 ]
Bonjour à tous,Encore une autre question sur un site web que l'internaute comment par l'authentification, il y a une possibilité de telechargement de
Probleme d'affichage du resultat d'un scan sur 2 colonnes [ par kilian67 ]
Salut, j'ai un souci pour l'affichage des résultats d'un script que je souhaiterai affiché sur 2 voir 3 colonnes. Voici le script en question il fon
Enlever la 'lecture seule' d'un fichier [ par lowkey ]
Salut à tous !Voici mon problème : Avec une fonction, je parcours tous les fichiers d'un dossier. Je souhaiterais supprimer ces fichier avec un unlink
Droit d'accès fichiers [ par mailliam ]
Bonjour à tous! J'ai un problème avec mes droits d'accès, en effet sur mon site j'ai plusieurs fichiers .php dont j'affiche et colore la source avec
php/xml/xslt [ par soolfa ]
salut a tous , svp j'ai un ensembles des fichiers .txt .( ces fichiers sont soit enregistrer dans un dossiers ,Soit les fichiers qui ont été ouvert s
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|