Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    modifica di uno script (rss news) per visualizzare solo una parte del file xml

    Ciao a tutti, spero che possiate essermi d'aiuto come al solito.
    In giro ho trovato uno script molto breve ed altrettanto efficace per visualizzare file xml rss feed.

    Lo script visualizza tutte le notizie del file xml, mi piacerebbe che invece ne viualizzasse solo un certo numero (per esempio le prime 5) di seguito lo script se qualcuno vuol darci un'occhiata...Grazie.

    Codice PHP:
    <?php 
    $insideitem 
    false
    $tag ''
    $title ''
    $description ''
    $link ''

    function 
    startElement($parser$name$attrs) { 
     global 
    $insideitem$tag$title$description$link
     if (
    $insideitem) { 
      
    $tag $name
     } elseif (
    $name == 'ITEM') { 
      
    $insideitem true
     } 


    function 
    endElement($parser$name) { 
     global 
    $insideitem$tag$title$description$link
     if (
    $name == 'ITEM') { 
      
    printf('<div align=\"left\">[b]<a href=\'%s\' target = \'_blank\' class=\'link02\'>%s</a>[/b]
    '

       
    trim(utf8_decode($link)),trim(utf8_decode($title))); 
      
    printf('%s</div>'."\n",trim(utf8_decode($description))); 
      
    $title ''
      
    $description ''
      
    $link ''
      
    $insideitem false
     } 


    function 
    characterData($parser$data) { 
     global 
    $insideitem$tag$title$description$link
     if (
    $insideitem) { 
     switch (
    $tag) { 
      case 
    'TITLE'
      
    $title .= $data
      break; 
     case 
    'DESCRIPTION'
      
    $description .= $data
      break; 
      case 
    'LINK'
      
    $link .= $data
      break; 
     } 
     } 


    $xml_parser xml_parser_create(); 
    xml_set_element_handler($xml_parser'startElement''endElement'); 
    xml_set_character_data_handler($xml_parser"characterData"); 
    $fp fopen('http://www.corriere.it/rss/economia.xml','r'
     or die(
    'Error reading RSS data.'); 
    while (
    $data fread($fp4096)) { 
     
    xml_parse($xml_parser$datafeof($fp)) 
      or die(
    sprintf('XML error: %s at line %d'
     
    xml_error_string(xml_get_error_code($xml_parser)), 
     
    xml_get_current_line_number($xml_parser))); 

    fclose($fp); 
    xml_parser_free($xml_parser); 
    ?>
    Viviamo tutti in una palude di fango, ma alcuni di noi guardano le Stelle http://www.comunicareoltre.it

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    anzichè mettere subito a video i risultati buttali in un'array, e poi visualizza con un ciclo for solo i primi 5 elementi.

    Se ti interessa sul mio sito c'è un articoletto sull'argomento, la classe è simile, ma anzichè stampare fa proprio quello che ti ho detto sopra...

    ciao

  3. #3
    Interessantissimo e molto manipolabile, complimenti.

    Quindi se ho capito bene, usando la tua classe, per visualizzare il contenuto dell' array devo usare un ciclo for che visualizzi le n notizie che voglio visualizzare... non dovrebbe essere particolarmente complicato, ma se ho bisogno di aiuto posto qui.

    Per curiosità conosci qualche script (php o forse meglio javascript) che posso usare per visualizzare gli elementi dell'array creato con la tua classe a rotazione? come un newsticker insomma...

    Grazie dell' aiuto
    Viviamo tutti in una palude di fango, ma alcuni di noi guardano le Stelle http://www.comunicareoltre.it

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    visto che era una cosa che mi avevano già chiesto ho il pacchetto pronto...


    http://www.gianiaz.net/download/rss.rar

    Ciao

  5. #5
    efficenza allo stato puro. Grazie 1000
    Viviamo tutti in una palude di fango, ma alcuni di noi guardano le Stelle http://www.comunicareoltre.it

  6. #6
    grazie gianiaz, finalmente uno script che funziona!

  7. #7
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    prego

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.