Script pour créer facilement un fichier rss 2.00 sur son serveur, via un formulaire.
La méthode pour le réaliser n'est certainement pas la meilleure, mais ca fonctionne.
(Certains diront certainemetnt d'utiliser des classes).
Je suis nul en php donc je fais comme je peux (certaines parties de ce code ont été réalisé par un ami).
Installation :
- Copier le répertoire 'editeur_rss' sur votre site.
- Ouvrer le fichier 'enregistrer_donnees.php' et modifier les lignes 6 à 12 avec vos informations.
- Lancer la page 'editer_news.php'.
N'oubliez pas de mettre le fichier 'rss.xml' en CHMOD 666.
Source / Exemple :
Page 'editer_news.php' :
<html>
<head>
<title>Editeur RSS</title>
<link rel="stylesheet" href="style_pages.css" type="text/css">
<body style="text-align: center">
<h1 align="center">Publications de news</h1>
<p align="center"> </p>
<table border="0">
<form name="formulaire" action="enregistrer_donnees.php" method="POST" enctype="multipart/form-data">
<tr>
<td width="231" align="center">
<h3>Titre de votre news</h3>
</td>
<td width="317" align="center"><input type="text" name="titre" size="72"></td>
</tr>
<tr>
<td align="center">
<h3>Votre message</h3>
<h3> </h3>
<h3> </h3>
</td>
<td align="center"><textarea rows="9" name="description" cols="55"></textarea></td>
</tr>
<tr>
<td width="231" align="center">
<h3>Lien</h3>
</td>
<td width="317" align="center">
<input type="text" name="linkarticle" value="http://" size="72" size="45"></td>
</tr>
<tr>
<td align="center">
</td>
<td align="center"> </td>
</tr>
<tr>
<td width="231" align="center">
<h3>Posté par</h3>
</td>
<td width="317" align="center"><input type="text" name="auteur" size="72"></td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">
<h3>Jour de publication</h3>
</td>
<td align="center">
<select name="day">
<option value="Mon, ">Lundi</option>
<option value="Tue, ">Mardi</option>
<option value="Wed, ">Mercredi</option>
<option value="Thu, ">Jeudi</option>
<option value="Fri, ">Vendredi</option>
<option value="Sat, ">Samedi</option>
<option value="Sun, ">Dimanche</option>
</select>
<select name="jour">
<option value="01 ">01</option>
<option value="02 ">02</option>
<option value="03 ">03</option>
<option value="04 ">04</option>
<option value="05 ">05</option>
<option value="06 ">06</option>
<option value="07 ">07</option>
<option value="08 ">08</option>
<option value="09 ">09</option>
<option value="10 ">10</option>
<option value="11 ">11</option>
<option value="12 ">12</option>
<option value="13 ">13</option>
<option value="14 ">14</option>
<option value="15 ">15</option>
<option value="16 ">16</option>
<option value="17 ">17</option>
<option value="18 ">18</option>
<option value="19 ">19</option>
<option value="20 ">20</option>
<option value="21 ">21</option>
<option value="22 ">22</option>
<option value="23 ">23</option>
<option value="24 ">24</option>
<option value="25 ">25</option>
<option value="26 ">26</option>
<option value="27 ">27</option>
<option value="28 ">28</option>
<option value="29 ">29</option>
<option value="30 ">30</option>
<option value="31 ">31</option>
</select> <select name="mois">
<option value="Jan ">Janvier</option>
<option value="Feb ">Février</option>
<option value="Mar ">Mars</option>
<option value="Apr ">Avril</option>
<option value="May ">Mai</option>
<option value="Mar ">Juin</option>
<option value="Jul ">Juillet</option>
<option value="Aug ">Août</option>
<option value="Sep ">Septembre</option>
<option value="Oct ">Octobre</option>
<option value="Nov ">Novembre</option>
<option value="Dec ">Décembre</option>
</select> <select name="annee">
<option value="2007 ">2007</option>
<option value="2008 ">2008</option>
<option value="2009 ">2009</option>
<option value="2010 ">2010</option>
<option value="2011 ">2011</option>
<option value="2012 ">2012</option>
<option value="2013 ">2013</option>
<option value="2014 ">2014</option>
<option value="2015 ">2015</option>
<option value="2016 ">2016</option>
<option value="2017 ">2017</option>
<option value="2018 ">2018</option>
<option value="2019 ">2019</option>
<option value="2020 ">2020</option>
<option value="2021 ">2021</option>
<option value="2022 ">2022</option>
<option value="2023 ">2023</option>
<option value="2024 ">2024</option>
<option value="2025 ">2025</option>
<option value="2026 ">2012</option>
<option value="2027 ">2013</option>
<option value="2028 ">2014</option>
<option value="2029 ">2015</option>
<option value="2030 ">2016</option>
<option value="2031 ">2031</option>
<option value="2032 ">2032</option>
<option value="2033 ">2033</option>
<option value="2034 ">2034</option>
<option value="2035 ">2035</option>
<option value="2036 ">2036</option>
<option value="2037 ">2037</option>
<option value="2038 ">2038</option>
<option value="2039 ">2039</option>
<option value="2040 ">2040</option>
<option value="2041 ">2041</option>
<option value="2042 ">2042</option>
<option value="2043 ">2043</option>
<option value="2044 ">2044</option>
<option value="2045 ">2045</option>
<option value="2046 ">2046</option>
<option value="2047 ">2047</option>
<option value="2048 ">2048</option>
<option value="2049 ">2049</option>
<option value="2050 ">2050</option>
</select></td>
</tr>
<tr>
<td align="center">
<h3>Heure de publication</h3>
</td>
<td align="center">
<select name="heure">
<option value="00">00</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
</select> heures <select name="minutes">
<option value="00">00</option>
<option value="05">05</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="25">25</option>
<option value="30">30</option>
<option value="35">35</option>
<option value="40">40</option>
<option value="45">45</option>
<option value="50">10</option>
<option value="55">55</option>
</select> minutes</td>
</tr>
<tr>
<td colspan="2" align="center"> <p><input type="submit" value="Prévisualiser"></td>
</tr>
</form>
</table>
</body>
</html>
Page 'enregistrer_donnees.php' :
<?
// Configuration
$cfg['file_to_edit'] = "rss.xml";
$cfg['page_retour'] = "editer_news.php";
$titresite = "Nom de votre site" ;
$linksite = "http://www.mosnite.com" ;
$descriptionsite = "Description de votre site." ;
$langue = "fr" ;
$copyright = "Copyright VOUS" ;
$titreimage = "Nom IMAGE RSS" ;
$urlimage = "http://www.monsite.com/icone_rss.gif" ;
$titre = stripslashes($_POST['titre']) ;
$description = stripslashes($_POST['description']) ;
$linkarticle = $_POST['linkarticle'] ;
$minutes = $_POST['minutes'] ;
$day = $_POST['day'] ;
$auteur = $_POST['auteur'] ;
$jour = $_POST['jour'] ;
$mois = $_POST['mois'] ;
$annee = $_POST['annee'] ;
$heure = $_POST['heure'] ;
$minutes = $_POST['minutes'] ;
$secondes = ":00" ;
$text = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>\n";
$text .= "<rss version=\"2.0\">\n";
$text .= "<channel>\n";
$text .= "<title>".$titresite."</title>\n";
$text .= "<link>".$linksite."</link>\n";
$text .= "<description>".$descriptionsite."</description> \n";
$text .= "<language>".$langue."</language> \n";
$text .= "<copyright>".$copyright."</copyright>\n";
$text .= "<image>\n";
$text .= "<title>".$titreimage."</title>\n";
$text .= "<url>".$urlimage."</url>\n";
$text .= "<link>".$linksite."</link>\n";
$text .= "</image>\n";
$text .= "<item>\n";
$text .= "<title>".$titre."";
$text .= " - Posté à ";
$text .= "$heure";
$text .= ":$minutes";
$text .= " Le ";
$text .= "$jour";
$text .= "$mois";
$text .= " Par ";
$text .= "$auteur";
$text .= "</title>\n";
$text .= "<link>".$linkarticle."</link>\n";
$text .= "<pubDate>".$day."$jour";
$text .= "$mois";
$text .= "$annee";
$text .= "$heure";
$text .= ":$minutes";
$text .= "$secondes";
$text .= " +0100</pubDate>\n";
$text .= "<description>".$description."</description>\n";
$text .= "</item>\n";
$text .= "</channel>\n";
$text .= "</rss>\n";
$handle = fopen($cfg['file_to_edit'],"w");
fwrite($handle, stripslashes($text));
echo "<div align=\"center\">";
echo "<a href=\"".$cfg['page_retour']."\">Retour</a>";
echo "</div>";
?>
Exemple fichier 'rss.xml' créé :
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="2.0">
<channel>
<title>Nom de votre site</title>
<link>http://www.mosnite.com</link>
<description>Description de votre site.</description>
<language>fr</language>
<copyright>Copyright VOUS</copyright>
<image>
<title>Nom IMAGE RSS</title>
<url>http://www.monsite.com/icone_rss.gif</url>
<link>http://www.monsite.com</link>
</image>
<item>
<title>htrh - Posté à 00:00 Le 01 Jan Par trhetrh</title>
<link>http://</link>
<pubDate>Mon, 01 Jan 2007 00:00:00 +0100</pubDate>
<description>votre message</description>
</item>
</channel>
</rss>
Conclusion :
Merci à l'aide de mon pote pour ce script.
Tous les commentaires seront les bienvenues.
Il est aussi facilement possible d'ajouter un mot de passe pour restreindre l'accès à la page d'édition.
A noter qu'il est possible de créer qu'un seul 'item'.
Néanmoins, il est possible de modifier facilement le code pour en créer d'autres.
Bonne utilisation.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.