- Le roi avait un fou et des favorites, l'internaute est fou de ses pages favorites...!
Description générale
- Il s'agit d'enregistrer l'URL des pages que l'on aime parcourir fréquemment.
- Bien sûr, il faut pouvoir aussi supprimer une URL.
Description détaillée
Discussions
S'agit-il d'une proposition proche de l'
AjoutDInformationViaLURL ? --
CharlesNepote
Il me semble qu'il s'agit plutôt d'une page qui regroupe les pages favorites d'un utilisateur. Celles qu'on visite frequemment. Eventuellement, de la forme de la page
DerniersChangements, uniquement avec les pages choisies. Ça me permettrait, par exemple, d'ajouter cette page à mes favoris et de savoir très simplement quand elle sera modifiée, sans chercher son nom chaque jour des les
DerniersChangements. Le principe fonctionne sur Wikipedia.org, on peut "surveiller" une page particulière --
JeremieCook
Réalisation
Cette fonctionnalité est installée sur un site d'essais :
http://www.arkheia.com ( ce site n'existe plus )
attention :
- Il est nécessaire de s'inscrire pour activer cette fonctionnalité, celle-ci étant réservée normalement aux visiteurs actifs sur le site.
- Étant sur une page, le bouton [+] enregistre la page favorite, le bouton [-] efface le favori...
@+ jmg
<?
/*
favoris.php - © 2004 jmg
- placer ce fichier dans le répertoire /handlers/page/
- mettre << include ("favoris.php"); >>
dans le fichier << /handlers/page/show.php >> après [ <div class="page"> ].
- ajouter le champ [ favoris ] type (txt) dans la table [ users ].
*/
if ($user = $this->GetUser()) {
$user = $this->LoadUser($_COOKIE["name"]);
$favoris = $user["favoris"];
if ($_POST["submit"] == "+") {
$valeur = $_SERVER['REQUEST_URI'];
$count = explode("|", $favoris);
foreach ($count as $element) {
if (strcasecmp($element, $valeur) == 0) {
$valeur = "";
}
}
if (!empty($valeur)) {
$favoris .= $valeur . "|";
}
$this->Query("update ".$this->config["table_prefix"]."users set "."favoris = '".mysql_escape_string($favoris)."' "."where name = '".$user["name"]."'");
}
if ($_POST["submit"] == "-") {
$valeur = $_SERVER['REQUEST_URI'];
$count = explode("|", $favoris);
foreach ($count as $element) {
if (strcasecmp($element, $valeur) == 0) {
$new_favoris .= "";
} else {
if (!empty($element)) {
$new_favoris .= $element . "|";
}
}
}
$favoris = $new_favoris;
$this->Query("update ".$this->config["table_prefix"]."users set "."favoris = '".mysql_escape_string($favoris)."' "."where name = '".$user["name"]."'");
}
$output = "<form action=\"\" method=\"post\">".
"<div class=\"histo\">".
"<input name=\"submit\" type=\"submit\" value=\"+\" />".
"<input name=\"submit\" type=\"submit\" value=\"-\" />".
"<strong> Favoris</strong> : ";
echo $output;
$count = explode("|", $favoris);
foreach ($count as $element) {
$lien = $element ;
$idsess = strpos($lien, "=") ;
$lien = substr($lien, $idsess + 1) ;
echo "<a href='$element'>".urldecode($lien)."</a>" . " ";
}
echo "<br /><hr></div></form>";
}
?>
J'ai réalisé cette implémentation ici:
http://moi.homeip.net/~pol/wiki/PagePrincipale
Les codes sources sont dispos ici:
TheTransporter
Qu'en pensez vous?
--
TheTransporter