Ajouter une url dansun fichier rss avec dom.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Ajouter une url dansun fichier rss avec dom.

par Shadockou » 10 avr. 2008, 17:22

Oui, quand on écrit en dur l'id pas de soucis, en revanche dès que je passe une variable $id,
je me retrouve avec un lien du type : http://localhost/~moi/lesite/blog.php?id= (et ça s'arrête là) pour tous les articles dans mon flux rss.


Edit : Non effectivement tu avais raison, il y avait bien un problème dans l'url et non dans la fonction
qui provenait d' une requête sql incomplète.

Désolé du dérangement.

par mere-teresa » 10 avr. 2008, 17:04

Tu as vérifié $url ? Ecrit en dur l'id... ?

Ajouter une url dansun fichier rss avec dom.

par Shadockou » 10 avr. 2008, 17:00

Bonjour j'essaye en vain d'ajouter une url du titre http://lesite/leblog?article=$id,
dans un flux Rss, mais impossible la variable $id saute à chaque fois.
L'idée est de créer un lien dans le flux rss qui dirige directement vers l'article
concerné.

Voici ma fonction d'ajout d'une news dans le flux rss :
function addOneNews($file, $title, $date_pub, $desc,$url){
//On récupère le channel
$NodeList= $file->getElementsByTagName("channel");
$element_channel = $NodeList->item(0);

// Création du noeud item
$element_item = $file->createElement("item");
$element_item = $element_channel->appendChild($element_item);

// Création du noeud title et ajout du texte à l élément
$element_title = $file->createElement("title");
$element_title = $element_item->appendChild($element_title);
$texte_title = $file->createTextNode($title);
$texte_title = $element_title->appendChild($texte_title);

// Création du noeud link et ajout du texte à l élément
$element_link = $file->createElement("link");
$element_link = $element_item->appendChild($element_link);
$texte_link = $file->createTextNode($url); //<------- C'est ici que ça coince
$texte_link = $element_link->appendChild($texte_link);

// Création du noeud pubDate et ajout du texte à l élément
$element_date = $file->createElement("pubDate");
$element_date = $element_item->appendChild($element_date);
$texte_date = $file->createTextNode($date_pub);
$texte_date = $element_date->appendChild($texte_date);

//Création du noeud description et ajout de texte à l'élément
$element_description = $file->createElement("description");
$element_description = $element_item->appendChild($element_description);
$texte_desc = $file->createTextNode($desc);
$texte_desc = $element_description->appendChild($texte_desc);

// Création du noeud author et ajout du texte à l élément
$element_author = $file->createElement("author");
$element_author = $element_item->appendChild($element_author);
$texte_author = $file->createTextNode("Moi_auteur");
$texte_author = $element_author->appendChild($texte_author);
}



Et voici l'url envoyé en param :
$url ='http://localhost/~moi/lesite/blog.php?id='.$id_blog;
Comment faire pour forcer Dom à me mettre mon url en entier ?
Est ce avec une autre méthode que createTextNode qu'il faut procéder si oui laquelle ?

Merci d'avance.