IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

Affichage article par article flux rss


Sujet :

AJAX

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Points : 152
    Points
    152
    Par défaut Affichage article par article flux rss
    Bonsoir,

    Je viens vers vous car depuis quelques semaines, je n'arrive pas à obtenir ce que je veux.

    Je souhaiterais savoir comment faire pour afficher article par article en Ajax avec mon code. Sauf si vous avez une meilleur solution bien sûr.

    J'essai d'intégrer cette partie de code: mais aucun succès!
    Même style que ceci: http://cssglobe.developpez.com/tutor...chiers/03.html mais avec mes résultats de flux rss comme ceci: http://joomla25.sakic.net/ajax-scroller/ avec ces codes:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title></title></head>
    <link type="text/css" href="rss-style.css" rel="stylesheet">
    <script>
     
    </style>
    </script>
    </head>
    <body bgcolor="#FFFFFF">
    <br>
    <div class="rsslib">
    <?php
            require_once("rsslib.php");
            $url = "http://www.reussir-au-quotidien.fr/feed/";
            echo RSS_Display($url, 15, false, true);
    ?>
    </div>
    </body>
    </html>

    Et ce code:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    <?php
     
     
    $RSS_Content = array();
     
    function RSS_Tags($item, $type)
    {
    		$y = array();
    		$tnl = $item->getElementsByTagName("title");
    		$tnl = $tnl->item(0);
    		$title = $tnl->firstChild->textContent;
     
    		$tnl = $item->getElementsByTagName("description");
    		$tnl = $tnl->item(0);
    		$description = $tnl->firstChild->textContent;
     
    		$y["title"] = $title;
    		$y["description"] = $description;
    		$y["type"] = $type;
     
    		return $y;
    }
     
     
    function RSS_Channel($channel)
    {
    	global $RSS_Content;
     
    	$items = $channel->getElementsByTagName("item");
     
    	// Processing channel
     
    	$y = RSS_Tags($channel, 0);		// get description of channel, type 0
    	array_push($RSS_Content, $y);
     
    	// Processing articles
     
    	foreach($items as $item)
    	{
    		$y = RSS_Tags($item, 1);	// get description of article, type 1
    		array_push($RSS_Content, $y);
    	}
    }
     
    function RSS_Retrieve($url)
    {
    	global $RSS_Content;
     
    	$doc  = new DOMDocument();
    	$doc->load($url);
     
    	$channels = $doc->getElementsByTagName("channel");
     
    	$RSS_Content = array();
     
    	foreach($channels as $channel)
    	{
    		 RSS_Channel($channel);
    	}
     
    }
     
     
    function RSS_Display($url, $size = 15, $site = 0)
    {
    	global $RSS_Content;
     
    	$opened = false;
    	$page = "";
    	$site = (intval($site) == 0) ? 1 : 0;
     
    	RSS_Retrieve($url);
    	if($size > 0)
    		$recents = array_slice($RSS_Content, $site, $size + 1 - $site);
     
    	foreach($recents as $article)
    	{
    		$type = $article["type"];
    		if($type == 0)
    		{
    			if($opened == true)
    			{
    				$page .="</ul>\n";
    				$opened = false;
    			}
    			$page .="<b>";
    		}
    		else
    		{
    			if($opened == false) 
    			{
    				$page .= "<ul>\n";
    				$opened = true;
    			}
    		}
    		$title = $article["title"];
    		$description = $article["description"];
    		$page .= "<li><a>$title</a>";
    		if($description != false)
    		{
    			$page .= "<br>$description";
    		}
    		$page .= "</li>\n";			
     
    		if($type==0)
    		{
    			$page .="</b><br />";
    		}
     
    	}
     
    	if($opened == true)
    	{	
    		$page .="</ul>\n";
    	}
    	return $page."\n";
     
    }
     
     
    ?>

    J'ai vraiment besoin d'aide. Car Je sais vraiment pas comment faire.

    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    un "flux rss" est un fichier XML.

    Là, tu montres du code HTML... et du JavaScript...

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Points : 152
    Points
    152
    Par défaut
    Bonjour,

    Oui bien sûr un flux RSS est bien un fichier xml. Maintenant comme évoqué, je souhaiterais les afficher sur ma page web donc c'est bien du html et php et JS?

    Merci d'avance.

  4. #4
    Invité
    Invité(e)
    Par défaut
    OK.

    Et que donne le code HTML généré ?

    As-tu une page en ligne à montrer ?

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Points : 152
    Points
    152
    Par défaut
    Merci de ta réponse.

    J'ai fait une capture d'écran de ce que j'obtiens sans le JS vu que je ne sais pas comment le mettre en place:

    Nom : Capture.PNG
Affichages : 152
Taille : 77,5 Ko

    Merci beaucoup.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Je crois que tu n'as pas compris que le navigateur affiche le fichier XML...

    Sinon, avec simplement "Ctrl"+"U", tu peux afficher le code de la page.

    N.B. Ta copie d'écran n'a, ici, aucun intérêt.

  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Points : 152
    Points
    152
    Par défaut
    Quand je fais ctrl+u j'obtiens ce résultat:

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title></title></head>
    <link type="text/css" href="rss-style.css" rel="stylesheet">
    <script>
    $(document).ready(function(){   
            $("#slider").easySlider({
                    prevText:'UP',
                    nextText:'DOWN',
                    orientation:'vertical'
            });
    });
    </script>
    </head>
    <body bgcolor="#FFFFFF">
    <br>
    <div id="slider">
    <ul>
    <li><a>5 pistes pour faire connaître votre entreprise</a><br>Lorsqu’on crée une entreprise, on se concentre au départ sur son projet et son produit ou service. Une fois l’activité lancée, il est indispensable de se faire connaître. On commence […]</li>
    <li><a>Faut-il reprendre une entreprise en 2017 ?</a><br>Nous sommes en train d’achever une année 2016 qui a vu au moins deux surprises politiques et économiques importantes : le Brexit et l’élection de Donald Trump, mais qui est […]</li>
    <li><a>Financer ses projets dans l’hôtellerie par l’equity crowdfunding : c’est possible !</a><br>Phénomène récent, le crowdfunding (littéralement « financement par la foule ») ou financement participatif consiste, pour une entreprise, à faire financer ses projets par un grand nombre de personnes (1).  […]</li>
    <li><a>Cadeaux de fin d’année: les limites à ne pas franchir !</a><br>Quel est le régime fiscal et social applicable aux présents offerts à Noël aux clients et aux salariés ? À l’approche des fêtes de fin d’année, il peut s’avérer judicieux, […]</li>
    <li><a>Contentieux : la quantification des préjudices économiques (2/2)</a><br>Expropriation Les retards dans les travaux de construction et les manquements aux contrats d’exploitation/de gestion demeurent des causes majeures de différends dans l’industrie THL, un état de fait dont il […]</li>
    <li><a>Contentieux : la quantification des préjudices économiques (1/2)</a><br>Des différends sont susceptibles de survenir à tous les stades de la vie d’un hôtel, de l’achat d’un terrain, ou d’un bien immobilier ou de l’investissement dans celui-ci, à la […]</li>
    <li><a>Murs et fonds – Quelle structure pour un investissement hôtelier ? (2/2)</a><br>Pour les investisseurs corporate, les structures où la société propriétaire des murs est également actionnaire de celle qui exploite le fonds sont à éviter Si l’investissement est réalisé par un […]</li>
    <li><a>Murs et fonds – Quelle structure pour un investissement hôtelier ? (1/2)</a><br>La question nous est souvent posée de savoir à l’occasion de l’acquisition des murs et du fonds d’un hôtel, si les deux doivent être logés dans une même structure ou […]</li>
    <li><a>Aides à l’embauche et contrats aidés : focus sur certains dispositifs (MAJ septembre 2016)</a><br>Lorsqu’un chef d’entreprise a besoin de recruter un salarié, son premier objectif est de rencontrer LE candidat dont les compétences et qualités seront en adéquation avec le profil qu’il recherche […]</li>
    <li><a>Prélèvement à la source de l’impôt sur le revenu</a><br>Les grandes lignes du projet de prélèvement à la source de l’impôt sur le revenu, qui devrait entrer en vigueur au 1er janvier 2018, sont désormais connues. Une réforme qui […]</li>
    </ul>
     
    </div>
     
     
    <script type="text/javascript" src="/js/jquery.js"></script>
    <script type="text/javascript" src="/js/easySlider.js"></script>
     
     
    </body>
    </html>

    Donc si je comprend bien, je ne peux pas le faire

  8. #8
    Invité
    Invité(e)
    Par défaut
    Tu comprends mal.

    On peut le faire, à partir du moment où on comprend ce qu'on fait.


    Là, ce qu'on obtient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <ul>
    <li><a>....</a>......</li>
    <li><a>....</a>......</li>
    <li><a>....</a>......</li>
    On voit clairement que le HTML a un problème :
    • balise <a> vide (pas de href),

    Donc :
    • commence par CORRIGER le code, pour obtenir un code correct.



    Par contre, on n'a pas le script de easyslider.js : On ne peut donc pas TESTER.

    [EDIT] Je me trompe, ou il te manque de style CSS qui va avec le slider ?
    Dernière modification par Invité ; 07/12/2016 à 15h16.

  9. #9
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Points : 152
    Points
    152
    Par défaut
    D'accord je vais nettoyer mon code. je ne veux pas de href justement.

    Concernant easyslider.js, voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(5($){$.K.V=5(d){3 e={8:\'U\',v:\'M\',4:\'J\',A:\'E\',B:\'\',j:T};3 d=$.R(e,d);Q f.L(5(){2=$(f);3 s=$("n",2).I;3 w=2.k();3 h=2.D();3 b=s-1;3 t=0;3 c=(d.B==\'S\');$("i",2).z(\'k\',s*w);6(!c)$("n",2).z(\'P\',\'O\');$(2).N(\'<9 u="\'+d.8+\'"><a r=\\"m:q(0);\\">\'+d.v+\'</a></9> <9 u="\'+d.4+\'"><a r=\\"m:q(0);\\">\'+d.A+\'</a></9>\');$("a","#"+d.8).o();$("a","#"+d.4).o();$("a","#"+d.4).y(5(){7("l");6(t>=b)$(f).x();$("a","#"+d.8).g()});$("a","#"+d.8).y(5(){7("H");6(t<=0)$(f).x();$("a","#"+d.4).g()});5 7(a){6(a=="l"){t=(t>=b)?b:t+1}C{t=(t<=0)?0:t-1};6(!c){p=(t*w*-1);$("i",2).7({G:p},d.j)}C{p=(t*h*-1);$("i",2).7({F:p},d.j)}};6(s>1)$("a","#"+d.4).g()})}})(W);',59,59,'||obj|var|nextId|function|if|animate|prevId|span||||||this|fadeIn||ul|speed|width|next|javascript|li|hide||void|href|||id|prevText||fadeOut|click|css|nextText|orientation|else|height|Next|marginTop|marginLeft|prev|length|nextBtn|fn|each|Previous|after|left|float|return|extend|vertical|800|prevBtn|easySlider|jQuery'.split('|'),0,{}))
    Merci de ton aide.

  10. #10
    Invité
    Invité(e)
    Par défaut
    Alors, ça fonctionne : http://codepen.io/jreaux62/pen/dOegxQ

    Ca peut venir de l'ordre de déclaration des scripts.

    Mets le script APRES les scripts d'appel à jQuery (à la fin du fichier) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $(document).ready(function(){	
    		$("#slider").easySlider({
    ...
    		});
    	});

  11. #11
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 275
    Points : 152
    Points
    152
    Par défaut
    Oui effectivement. Je récupère bien les flux RSS pourtant. Et je fais bien comme ceci.

    Je pense que quelques choses m'échappent

Discussions similaires

  1. Récupérer 1ère image d'un article dans un flux RSS
    Par guenfood dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/10/2015, 08h49
  2. Réponses: 2
    Dernier message: 30/01/2015, 17h06
  3. [Drupal] Afficher le résultat d'un webservice dans une page / Passer par un flux RSS
    Par baggie dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 15/05/2012, 09h40
  4. partager des articles proposés en flux RSS
    Par jasinski13 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/03/2012, 14h22
  5. Réponses: 1
    Dernier message: 08/04/2010, 23h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo