Forum de discussions pour les webmasters et les web developpeurs. (PHP, SQL, XHTML, JavaScript, Référencement, Positionnement,...)
Vous n'êtes pas identifié.
Bonsoir,
je souhaiterai afficher dans la page infosite de mon annuaire les sites thématique
les plus proche comme sur certain annuaire mes le problème c'est que je n'arrive
pas à trouvez cette fonction !
Exemple sur c'est annuaire :
- http://www.bestofdirectory.net/site-76-web.htm
- http://www.toplien.fr/internet/annuaire … d2257.html
Voici la page infosite.php si cela peut vous intéresser :
<?php
include("bdd_utilisable.php");
include("moteur_utilisable.php");
mysql_connect("$db_server", "$db_user_login", "$db_user_pass") or die("Connexion impossible");
mysql_select_db("$db_name");
$nom_annuaire = $PMA_infos['titre_site'];
// on crée la requete SQL
$id = htmlentities($_GET['id']);
$sql = "SELECT * FROM $T_sites WHERE id=$id";
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$row = mysql_fetch_assoc($req);
//on cherchre la catégorie
$sql2 = "SELECT cat_name FROM $T_categories WHERE id=".$row['id_cat']."";
$req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error());
$row2 = mysql_fetch_assoc($req2);
$categ = htmlspecialchars($row2['cat_name']);
?>
<?php
//préparation URLs
$site = $row['url'];
$site2 = eregi_replace("http://","",$site);
$site3 = eregi_replace("www.","",$site2);
$url_rss = $row['url_rss'];
// titrage aléatoire
$nbtitres=3;
$title[1]=$row['titre'];
$title[2]=$row['titre2'];
$title[3]=$row['titre3'];
srand((double)microtime()*32000);
$titre_aleatoire=rand(1,$nbtitres);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/2002/REC-xhtml1-20020801/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Infos sur <?php if (($row['titre2']) && ($row['titre3']) != '') { echo $title[$titre_aleatoire]; } else { echo $row['titre']; } ?> ... catégorie <?php echo $categ; ?></title>
<meta name="description" content="Annuaire de référencement basé sur le script Utilisable V2 ; Infos sur le site <?php echo $row['titre']; ?>." />
<meta name="keywords" content="utilisable, annuaire, remunerateur, francophone, affiliation, referencement, lien en dur" />
<meta http-equiv="content-language" content="fr" />
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="content-script-type" content="text/javascript" />
<script type="text/javascript" src="js_utilisable.js"></script>
<link type="text/css" href="utilisable.css" rel="stylesheet" />
<link type="text/css" href="utilisable_2.css" rel="stylesheet" />
<link type="text/css" href="couleurs.css" rel="stylesheet" />
</head>
<body>
<div id="top"> </div>
<!-- Menu tout en haut à gauche de la page, modifiable à volonté -->
<div id="menuhaut">
<div class="mhposition"><a href="http://www.adifco.fr/seminaire-referencement.html?xtor=AL-19">Formation au référencement</a> | <a href="http://referencement.utilisable.com/index.php?au=<?php echo $num_au; ?>">Référencement</a></div>
<!-- Menu tout en haut à droite de la page, modifiable à volonté -->
<div class="mhdroite"><a href="http://forum.utilisable.com">Forum Utilisable</a> | <a href="http://www.affilier-utilisable.com">Affiliation Utilisable</a> | <a href="http://www.eudip.com">European Directory</a></div>
</div>
<!-- Voici l'entete du site (partie a fond brun avec l'image logo.jpg) et le champ "recherche" -->
<div id="logo"><b><?php echo $nom_annuaire; ?></b></div>
<?php
//affichage du formulaire pour le moteur de recherche
$mots = isset($_REQUEST['mots']) ? $_REQUEST['mots'] : '';
if (ereg ("(www\.)?[a-z0-9]{1,1}[._a-z0-9-]*[a-z0-9]{1,1}\.[a-z]{2,4}$", $mots, $regs)) {
$mots = eregi_replace("http://","",$mots);
$mots = eregi_replace("www.","",$mots);
$mots = eregi_replace("\.[a-z]{2,4}","",$mots);
$mots=trim($mots);
} else {
$mots=trim($mots);
}
if (empty($mots))
{
$value = "";
$erase = " onfocus=\"if (!erased_annuaire)this.value = ''; erased_annuaire = true;\"";
}
else
{
$value = stripslashes(htmlspecialchars($mots));
$erase = "";
}
//formulaire pour afficher le moteur de recherche interne a Annuaire Utilisable
?>
<form id="recherche" action="recherche.php" method="post">
<div>
<input type="hidden" name="action" value="seek" />
<input type="hidden" name="nb_results2show" value="10" />
<input type="hidden" name="booleen" value="AND" />
<input type="text" name="mots" size="25" maxlength="100" value="<?php echo $value; ?>"<?php echo $erase; ?> class="text_to_search_annuaire" />
<input type="submit" value="Rechercher" class="submit" />
</div>
</form>
<!-- Menu se trouvant sous l'entete et le logo. Ce menu est bien sur éditable à volonté selon vos besoins éditez le fichier : menu_haut.php-->
<?php include "menu_haut.php"; ?>
<!-- Menu se trouvant à gauche, sous le menu principal. Ce menu est bien sur éditable à volonté selon vos besoins -->
<div class="menugauche">
<div><img src="images/boutonnavigation.jpg" alt="navigation" /></div>
<?php include "list_cat.php"; ?>
</div>
<div class="menugauche fondblanc">
<div><img src="images/boutonmembre.jpg" alt="navigation" /></div>
<a href="suggerer_site.php?id_cat=<?php echo isset ($cat_id) ? $cat_id : ''; ?>&action=meta_get" title="Ajouter un nouveau site à l'annuaire">Soumettre un site</a><br />
<a href="nouveaux.php" title="Nouveaux sites">Voir les nouveaux sites</a><br />
<a href="allcategs.php">Site Map</a><br />
<br />
<br />
<br />
<p> <a href="http://validator.w3.org/check?uri=referer"><img
style="border:0;width:88px;height:31px" src="http://www.w3.org/Icons/valid-xhtml10"
alt="Valid XHTML 1.0 Strict" /></a> </p>
<p> <a href="http://jigsaw.w3.org/css-validator/"> <img style="border:0;width:88px;height:31px"
src="http://jigsaw.w3.org/css-validator/images/vcss"
alt="Valid CSS!" /> </a> </p>
</div>
<!-- Voici la boite de contenu central du site. Cette boite est bien sur éditable à volonté selon vos besoins -->
<div id="texte">
<h1>::. <?php echo $titre; ?></h1>
<div>
<script type="text/javascript"><!--
google_ad_client = "<?php echo $adsense; ?>";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "000000";
google_color_url = "999999";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<h1>Fiche du site : <?php if (($row['titre2']) && ($row['titre3']) != '') { echo $title[$titre_aleatoire]; } else { echo $row['titre']; } ?></h1>
<table style="width:95%;margin:0;">
<!-- CENTRE -->
<tr>
<td style="width:100%;" valign="top" class="arbo_annuaire"><div align="left">
<p>
<em><strong>Titre du site </strong></em>: <a href="<?php echo $row['url']; ?>" target="_blank"><?php if (($row['titre2']) && ($row['titre3']) != '') { echo $title[$titre_aleatoire]; } else { echo $row['titre']; } ?></a><br /><?php echo 'PR Google <img style="width:44px; height:15px; border:0;" src="images/pr'.$nbpr.'.gif" alt="Pagerank du site">' ?><br />
<em><strong>URL</strong></em> : <a href="<?php echo $row['url']; ?>"><?php echo $row['url']; ?></a><br />
<em><strong>Ajouté le (AAAA-MM-JJ)</strong></em> : <?php echo $row['date_validation']; ?><br />
<em><strong>Dans la catégorie </strong></em> : <a href="<?php echo $row['id_cat'].'-'.$categ; ?>.html" title="<?php echo $categ; ?>"><?php echo $categ; ?></a></p>
<p><em><strong>Description</strong></em> : <?php echo $row['description']; ?></p>
<p><em><strong>Image</strong></em> :<br />
<img src="<?php if ($row['url_image']) {echo $row['url_image']; } else {echo "images/image_sites.gif";} ?>" width="120" height="90" border="0" alt="<?php echo $row['titre']; ?>" /></p>
<p><em><strong>Flux RSS et dernières News</strong></em> :<br />
<?php
if ($url_rss == True)
{
// Configuration
$nombre_limite = 10;
// Affichage du Flux
$file = fopen($row['url_rss'],"r");
if ($file)
{
while (!feof($file)) $raw .= fread($file,32000);
fclose( $file );
if(eregi("<item>(.*)</item>",$raw,$rawitems))
{
$items = explode("<item>", $rawitems[0]);
$nb = count($items);
$maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite;
for ($i=0;$i<$maximum;$i++)
{
eregi("<title>(<!\[CDATA\[)?(.+?)(\]\]>)?</title>",$items[$i+1], $title);
eregi("<link>(.*)</link>",$items[$i+1], $link);
echo "• <font style=\"font-size:10px;font-family:Tahoma\"><a href=\"".$link[1]."\" target=\"_blank\">".$title[2]."</a></font><br />";
}
}
}
else
{
echo "Ce site ne propose aucun flux RSS";
}
}
?></p>
<p><em><strong>Référencement et popularité </strong></em> :</p>
<ul>
<li><em><strong>Google</strong></em> : <strong><?php echo $blG; ?></strong> > <a href="http://www.google.fr/search?hl=fr&q=link%3A<?php echo $site; ?>&btnG=Recherche+Google&meta=" target="_blank">Pages liées</a> | <a href="http://www.google.fr/search?hl=fr&newwindow=1&q=info%3A<?php echo $site; ?>&meta=" target="_blank">Infos Google</a> | <a href="http://www.google.com/search?sourceid=navclient&q=cache:<?php echo $site; ?>" target="_blank">Cache Google</a> | <a href="http://www.google.com/search?hl=fr&newwindow=1&q=site%3A<?php echo $site; ?>&meta=" target="_blank">Pages indexées</a> </li>
<li><em><strong>MSN</strong></em> : <strong><?php echo $blM; ?></strong> > <a href="http://search.msn.fr/results.aspx?q=link%3A<?php echo $site; ?>&FORM=QBHL" target="_blank">Pages liées</a> | <a href="http://search.msn.fr/results.aspx?q=site%3A<?php echo $site; ?>&FORM=QBRE" target="_blank">Pages indexées</a> </li>
<li><em><strong>Yahoo</strong></em> : <strong><?php echo $blY; ?></strong> > <a href="http://search.yahoo.com/search?p=link%3Ahttp%3A%2F%2F<?php echo $site2; ?>&ei=UTF-8&fr=sfp&n=20&fl=0&x=wrt" target="_blank">Pages liées</a> | <a href="http://search.yahoo.com/search?p=site%3A<?php echo $site2; ?>&ei=UTF-8&fr=sfp&n=20&fl=0&x=wrt" target="_blank">Pages indexées</a> <br />
</li>
<li>Améliorer le <a href="http://referencement.utilisable.com/index.php?au=<?php echo $num_au; ?>" title="Améliorer le référencement de ce site">référencement</a> de <a href="<?php echo $row['url']; ?>"><?php echo $site; ?></a> avec le <a href="http://www.adifco.fr/outil-metas-tags.php">générateur</a> de métas tags et l'outil de <a href="http://www.adifco.fr/outil-metas-tags-valid.php">validation</a>. </li>
</ul>
<?php
// on ferme la connexion à mysql
//mysql_close($req);
?>
</p>
</div></td>
</tr></table>
<br />
<br />
<br />
</div>
<!-- Voici la boite du bas de page du site. Cette boite est bien sur éditable à volonté selon vos besoins -->
<div id="basdepage">
<div><a href="allcategs.php">Plan du site</a></div>
<?php
// Footer de page, modifier le fichier footer.php
include ("footer.php");
// NE PAS MODIFIER LE COPYRIGHT CI-DESSOUS
include ("http://adm2.utilisable.com/copyright.php");
?>
</div>
</body>
</html>Je vous en remercie d'avance pour vos réponse et pour votre aide !
Cordialement,
romain
Hors ligne
il faut définir un index de type fulltext sur les zones texte (titre et description). Tu peux ensuite faire une recherche des sites ayant un titre+description proche.
Hors ligne
toplien a écrit:
il faut définir un index de type fulltext sur les zones texte (titre et description). Tu peux ensuite faire une recherche des sites ayant un titre+description proche.
Bonsoir,
merci pour votre réponse j'ai déjà chercher à savoir comment je puisse faire mes je n'ait pas encore trouvez la solution !
Cordialement,
romain
Hors ligne
Bonjour,
Ce que veut dire Toplien c'est que dans ta base de donnée, plus précisément la table ou est inscrit le nom des champs utilisés (titre, description),
il y a un système d'index qui permet d'agir sur les performances lors de la lecture / écriture de table. Pour optimiser les performances lors de la recherche il faut créer un index (full index: texte entier) sur les champs concernés (titre, description).
Tu souhaites faire une recherche "approximative" pour les thèmes proches ?
Regarde du coté de LIKE sous mysql.
Hors ligne