Moteur de recherche sans BDD

cs_Zalexiel Messages postés 3 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 26 janvier 2005 - 25 janv. 2005 à 20:46
colombe tresor Messages postés 8 Date d'inscription samedi 24 décembre 2005 Statut Membre Dernière intervention 9 mai 2008 - 8 mai 2008 à 16:42
salut!!!!
j'ai un petit problème! je dois faire une sorte de moteur de recherche mais sans utiliser de base de données et je sais pas du tout comment mis prendre!
je connais que javascript (et encore pas très bien) mais jai trouver sur internet un code en php qui doit normalement me permettre de résoudre mon problème! Mais rien a faire j'y arrive pas, sa fonctionne pas!
Connaissez vous un autre moyen? suis je obliger d'utiliser du php??
please! help me!
Merci

12 réponses

cs_eXon Messages postés 166 Date d'inscription lundi 17 janvier 2005 Statut Membre Dernière intervention 8 avril 2007 1
26 janv. 2005 à 04:51
Tu n'as qu'à mettre tes données dans des fichiers txt au lieu et
utiliser les fonctions fopen et compagnie. Tu me donnes une idée de
source à faire qui manque sur phpcs ;).

----------------

eXon
http://www.lookstrike.com
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
26 janv. 2005 à 14:39
Salut ;-)



Un exemple : tu fais un moteur qui va scruter ton site et qui enregistre dans un fichier texte des infos de ce genre :



Par exemple tu dois avoir un opérateur (AND ou OR) qui te permettra
d'affiner ta recherche. AND correspond à "tous les mots" et OR à "au
moins un des mots". Ce champ sera paramétré via le formulaire comme
ceci :



<select name="operateur">

<option value="AND">Tous les mots</option>

<option value="OR">Au moins un des mots</option>

</select>



--------------------------------

page|titre|keywords|texte

--------------------------------

processeur.php|le processeur|processeur, cpu|le processeur est un composant...



Ensuite lorsqu'une recherche est lancée, tu récupères l'information du formulaire comme ceci :



<?php

if(isset($_POST['recherche']))

{

//Déclaration des variables

$i=0;

$p_mot=0;

$mot_trouve=1;

$mot_trouve2=0;

$p_ligne=0;



//On génère un tableau contenant tous les mots de la recherche

$tab_mots=explode(' ',$_POST['recherche']);



//On ouvre le fichier texte

$tab_fichier=file('fichier.txt');



//Nombre de lignes et de mots

$nb_lignes=count($tab_fichier);

$nb_mots=count($tab_mots);



//Parcours le fichier

while($i<$nb_lignes)

{

//Décompose les différentes parties (titre, keywords, etc...) de la ligne

$tab_ligne=explode('|',$tab_fichier[$i]);



//Scanne tous les mots entrés par l'internaute et vérifie si ils existent dans la ligne

while($p_mot<$nb_mots)

{


//Regarde si le mot en cours existe dans la ligne,
si il n'existe pas $mot_trouve passe à 0

while($p_ligne<4)

{

//L'internaute a choisi 'Tous les mots';

if($_POST['operateur']=='AND')

{

if(!strpos($tab_ligne[$p_ligne],$tab_mots[$p_mot]))

{

$mot_trouve=0;

}

$p_ligne++;

}

//L'internaute a choisi 'Au moins un des mots'

else

{

if(strpos($tab_ligne[$p_ligne],$tab_mots[$p_mot]))

{

$mot_trouve=1;

}

}

$p_mot++;

}

//Affiche un lien pointant vers la page correspondante à la recherche

if($mot_trouve==1 OR $mot_trouve2==1)

{


echo '[',$tab_ligne[0],' ',stripslashes($tab_ligne[1]),']';

}

}

$i++;

}

}

?>



Le code est fait de tête donc si y'a des petites erreurs ne m'en veut pas.



a ++
Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 janv. 2005 à 16:06
la source manque sur phpcs car elle est irréalisable...

Comment référencer en php ???

Il faut un bon bot pour référencer, or en PHP, c'est infaisable... autant le faire en C...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happyhttp://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
26 janv. 2005 à 17:12
"or en PHP, c'est infaisable"



Bah tu scannes les sources avec un fsockopen, tu récupères les liens et ainsi de suite...



Je vois pas ce qu'il y a d'infaisable là dedans ?!


Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 janv. 2005 à 18:05
mais le truc c'est que sur chacune des pages, tu auras plein de liens, puis plein de liens, puis plein d'autres....



en gros, ton script peut tourner quelques années avant d'afficher le résultat...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
26 janv. 2005 à 18:24
Mais il s'agit d'un moteur de recherche interne à ton site, donc un
petit tableau qui permet de savoir si la page a déjà été consultée et
hop, même si ton site fait 10000 pages, en local c'est rapide ;-)



a ++

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
26 janv. 2005 à 19:41
en local c'est facile...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
26 janv. 2005 à 19:58
Bah si t'es pas trop limité en trafic tu peux le faire en ligne aussi...

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
cs_Zalexiel Messages postés 3 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 26 janvier 2005
26 janv. 2005 à 20:32
ben je suis completement largué moi!!! le jour ou jarriverai à faire un code pareil de tête!!
je me suis mise au php depuis 2 jours donc si ta fait des erreurs c'est surement pas moi qui vais les voir! en tout cas MERCI!! :-D
jai trouvé se code aussi mais sa na pas fonctionner, si vous savez pkoi... dite le moi

<?
//ouverture du fichier moteur.txt
//contenant les références des pages html
//sous la forme
//ma_page1.html
//ma_page2.html
//utiliser un séparateur ici c'est


$ouvre= fopen("moteur.txt","r");
$lit=fread($ouvre,filesize("moteur.txt"));
$texte=explode("

",$lit);
$combien=count($texte)-1;
fclose($ouvre);


//traitement du mot clé entré par l'utilisateur
//le nom de l'input est 'terme'
echo "<form></form>";
if ($terme!="" && strlen($terme)>2)
{
$terme=strtolower($terme);
for ($i=$combien-1;$i>=0;$i--)
{
$recherche=htmlentities($texte[$i]);
$tableau=explode("",$recherche);
foreach ($tableau as $ligne)
{
$fichier = file($ligne);
foreach ($fichier as $rang)
{
$rang=strtolower($rang);
if (ereg($terme,$rang))
{
$rang=strip_tags($rang);
$rang=str_replace($terme," $terme :",$rang);
if (!ereg($terme,$rang)){$rang ="";}
else
{
echo"$texte[$i];$rang";
break;
}
}
}
}
}
}
?>
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
26 janv. 2005 à 20:46
Bah écoutes franchement j'ai pas le temps de déchiffrer toutes les
sources de la planète, je t'en fais une, si elle fonctionne tant mieux,
si elle ne fonctionne pas je m'efforcerai de résoudre le pb, maintenant
il faut que t'y mette un peu du tien et que t'apprennes le php...



http://www.vulgarisation-informatique.com/php.php



a +

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
cs_Zalexiel Messages postés 3 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 26 janvier 2005
26 janv. 2005 à 20:53
je ferai se ke je pourrais... mais merci kan meme :-)
0
colombe tresor Messages postés 8 Date d'inscription samedi 24 décembre 2005 Statut Membre Dernière intervention 9 mai 2008
8 mai 2008 à 16:42
salut les informaticiens
0
Rejoignez-nous