Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

EDITEUR FLUX RSS 2 VIA UN FORMULAIRE


Information sur la source

Catégorie :Xml Classé sous : news, rss, nouvelles, xml, éditer Niveau : Débutant Date de création : 09/01/2007 Date de mise à jour : 09/01/2007 21:06:16 Vu / téléchargé: 5 490 / 452

Note :
6,5 / 10 - par 2 personnes
6,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (12)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
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

  • 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">&nbsp;</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>&nbsp;</h3>
  • <h3>&nbsp;</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">
  • &nbsp;</td>
  • <td align="center">&nbsp;</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">&nbsp;</td>
  • <td align="center">&nbsp;</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>&nbsp;&nbsp;&nbsp;
  • <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>&nbsp;&nbsp;&nbsp; <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>&nbsp;&nbsp;&nbsp; <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&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <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">&nbsp;<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>
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">&nbsp;</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>&nbsp;</h3>
		<h3>&nbsp;</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">
		&nbsp;</td>
      <td align="center">&nbsp;</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">&nbsp;</td>
      <td align="center">&nbsp;</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>&nbsp;&nbsp;&nbsp;
	  <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>&nbsp;&nbsp;&nbsp; <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>&nbsp;&nbsp;&nbsp; <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&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <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">&nbsp;<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.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

09 janvier 2007 19:59:39 :
Oubli du code :-)
09 janvier 2007 21:06:16 :
Un code plus propre...