Crée un flux rss à partir d'un formulaire

Créer un fichier news.php : c'est notre page formulaire.

<form  name="updaterss" id="updaterss" method="post" action="updaterss.php" >
  <fieldset class="floatleft">
    <legend>Renseignement de la nouvelle news </legend>
    <p>
      <label for="titre">Titre  : </label>
      <input class="input" name="titre" id="titre" type="text">
    </p>
    <p>
     <label for="lien">Lien: Http:// </label>
     <input class="input" name="lien" id="lien" value="" type="text">
    </p>
    <p>
      <label for="date">Date : </label>
      <input class="input" name="date" id="date" value="" type="text">
    </p>
    <p>
      <label for="description">description : </label>
      <input class="input" name="description" id="description" value="" type="text" >
    </p>
   </fieldset>
   <fieldset>
     <legend>Validation</legend>
    <p>
      <label for="envoi">Envoyer : </label>
      <input value="Envoyer" type="submit">
    </p>
    <p>&nbsp;</p>
  </fieldset>
  <br>
</form>

Ensuite, on va créer un fichier qui mettra à jour notre fichier de flux.
Ce sera ici updaterss.php

<?php
//Fichiers d'initialisations pour avoir une entête constante.
//c'est le header, il est constant
    $rssfile = '<?xml version="1.0" encoding="iso-8859-1"?>';
    $rssfile .= '<rss version="2.0">';
    $rssfile .= '<channel>';
    $rssfile .= '<title>Mon titre</title>';
    $rssfile .= '<link>http://www.monsite.fr</link>';
    $rssfile .= '<description>Les flux rss</description>';
    $rssfile .= '<copyright>© 2006 Tyller</copyright>';
    $rssfile .= '<language>fr</language>';
    $rssfile .= '<image>';
    $rssfile .= '    <title>Logo</title>';
    $rssfile .= '    <url>http://www.monsite.fr/logo.gif</url>';
    $rssfile .= '    <link>http://www.monsite.fr</link>';
    $rssfile .= '</image>';
    $today= date("D, d M Y H:i:s +0100");
    //Wed, 16 Nov 2005 00:01:00 +0100
    $rssfile .= '<todayDate>'.$today.'</todayDate>';      
           
// Extraction des actualités
//grâce aux 4 lignes suivante, on récupère les données transmises par le fichier news
    $titre = $_POST['titre'];
    $lien = $_POST['lien'];
    $date = $_POST['date'];
    $description = $_POST['description'];
       
//Une fois les données récupérées, on crée le corps de la page xml
    $rssfile .= '<item>'; // On ajoute le code pour chaque élément
    $rssfile .= '<title>'.$titre.'</title>';
    $rssfile .= '<link>' ."http://www.".$lien."". '</link>';
    $rssfile .= '<pubDate>'.$date.'</pubDate>';
    $rssfile .= '<description>'.$description.'</description>';
    $rssfile .= '</item>';   

//On rajoute un footer constant pour terminer le canal
    $rssfile .= '</channel>';
    $rssfile .= '</rss>';
    $fichier = fopen("fluxrss.xml", 'w+'); // On ouvre le fichier en mode écriture avec écrasement
    fputs($fichier, $rssfile); // On insère le code dans le fichier
    fclose($fichier); // On ferme le fichier
    echo 'Fichier créé !<br><a href="fluxrss.xml">Voir le fichier</a>'; //on indique si les fichiers ont bien été créé, et pouvons les visualiser.
?>

Et voila, vous n'avez plus qu'à créer un fichier fluxrss.xml vide, si vous ne le faites pas, sur certains serveurs il pourra être créé automatiquement à la soumission du formulaire.

Ce document intitulé « Crée un flux rss à partir d'un formulaire » issu de CodeS SourceS (codes-sources.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Rejoignez-nous