Jeux Web.org

  • Home
  • Forums
  • Photos
  • Boutique
    • Boutique JeuxWeb
    • Panier
  • Nous contacter
    • JeuxWeb
    • Jeux Hébergés
JeuxWeb
  • Accueil
  • News
  • Qui Sommes Nous ?
  • Créateur de Jeu ?
  • Jeux de Plateau
  • Aider JeuxWeb
  • Liens
Les Guides
  • Codes et Scripts
  • Articles
  • Jeux de Plateau
Nos Jeux
  • MountyHall
  • Monde de Thäanis
  • Braldahim
cisco ccna
cisco ccna


Nom d"utilisateur / mot de passe perdu ?
Pas encore inscrit ? Inscription

postheadericon Créer un fil RSS

postdateiconMercredi, 23 Novembre 2005 01:23 | postauthoriconÉcrit par Yves Savonet | PDF 
En un simple script php, mettons à disposition de nos visiteurs un moyen aisé de se tenir au courant des nouvelles de notre jeux.

Le but de ce script est de créer un fichier statique (de type XML) qui sera composé des informations de vos nouvelles :

La structure de la DB :

CREATE TABLE `News` (
  `NW_ID` int(11) NOT NULL auto_increment,
  `NW_Date` datetime default NULL,
  `NW_Title` varchar(255),
  `NW_News` text,
  PRIMARY KEY  (`NW_ID`),
  KEY `NW_Date` (`NW_Date`)
)
TYPE=MyISAM AUTO_INCREMENT=1;

Le fichier rss (statique)

News.rss
ATTENTION : Le serveur web doit avoir les droits d'écriture sur ce fichier

Le Script :

// Fichier make_rss.php

// Variables décrivant votre flux
$ls_SaveAs = "News.rss";
$ls_urlNews = "http://www.mountyhall.com/News.php";
$ls_titleNews = "MountyHall - News";
$ls_descriptionNews = "Toutes les news de MountyHall, la Terre de Trõlls";
$ls_mailWebmaster = "webmaster#at#mountyhall.com";

// connexion à la DB
f_myConnection();

// requete pour obtenir les news qui nous intéressent
$SQL="SELECT * FROM News ORDER BY NW_Date DESC";
$lp_SQLResult = f_myQuery($SQL);

// construction du début du fichier XML
$ls_return = '<'.'?xml version="1.0" encoding="iso-8859-1" ?'.'>';
$ls_return.= '<rss version="2.0">';
$ls_return.= '<channel>';
$ls_return.= '<title>'.$ls_titleNews.'</title>';
$ls_return.= '<link>'.$ls_urlNews.'</link>';
$ls_return.= '<description>'.$ls_descriptionNews.'</description>';
$ls_return.= '<language>fr</language>';
$ls_return.= '<pubdate>'.date('r').'</pubdate>';
$ls_return.= '<lastbuilddate>'.date('r').'</lastbuilddate>';

// Parcours des records
while($lq_News = mysql_fetch_array($lp_SQLResult))
{
  // ajout d'un 'item' pour chaque nouvelle
  $ls_return.= '<item>';
  $ls_return.= '<title>'.htmlspecialchars($lq_News['NW_Title']).'</title>';
  $ls_return.= '<author>'.ls_mailWebmaster.'</author>';
  $ls_return.= '<link>'.$ls_urlNews.'?ID='.$lq_news['NW_ID'].'</link>';
  $ls_return.= '<description>';
  $ls_return.= htmlspecialchars($lq_News["NW_News"]);
  $ls_return.= '</description>';
  $ls_return.= '<pubdate>'.date('r', strtotime($lq_News["NW_Date"])).'</pubdate>';
  $ls_return.= '<guid>".$ls_urlNews."?ID='.$lq_News["NW_ID"].'</guid>';
  $ls_return.= '</item>';
}

// Fin du fichier XML
$ls_return.= '</channel>';
$ls_return.= '</rss>';

// ecriture du fichier rss sur l'arborescence web
// Attention : le serveur web doit avoir les droits d'écriture sur ce fichier
$lf_rss = fopen($ls_SaveAs, 'w');
fwrite($lf_rss, $ls_return);
fclose($lf_rss);

Il suffit donc d'appeler votre fichier make_rss.php a chaque fois que vous ajoutez une nouvelle dans votre DB.

Annoncer le Flux rss :

dans votre page d'accueil, il faut ajouter, dans la section <head></head>

<LINK REL="alternate" TYPE="application/rss+xml" TITLE="MountyHall - News" HREF="News.rss" />

Certains navigateurs (Mozilla Firefox, Maxthon, ..) pourront ainsi détecter automatiquement la présence de ce flux lorsque le visiteur arrivera sur votre page d'accueil.

Notes :

  • les fonctions f_myConnection() et f_myQuery() sont propres à notre framework, il vous suffira de les remplacer par votre méthode de connexion et votre méthode d'exécution de requete SQL
  • vous avez des problèmes pour générer votre rss malgré ce tutotial ? Validez le : http://feedvalidator.org, vous pourrez alors placez la jolie marque Valid RSS

{mos_fb_discuss:2}

< Précédent   Suivant >

Mis à jour (Jeudi, 03 Mai 2007 13:57)

 

postheadericon Derniers Codes & Scripts

  • Générer un flux rss (2e partie)
  • Afficher une image "sécurisée"
  • Temps d'exécution d'un script
  • Compter le nombre de joueurs actifs
  • Backup de base de donnée

postheadericon Codes & Scripts Populaires

  • Pack Graphique : comment l'implémenter
  • Jet de Dés
  • Code Image - éviter les doubles publications
  • Authentification d'une zone
  • Créer un fil RSS

Copyright © 2010 JeuxWeb.org asbl.
All Rights Reserved.

Designed by VYS - DungeonMaster (Yves Savonet).