Visualizzazione risultati 1 fino 3 di 3

Discussione: Aiuto su visualizzazione di un'archivio xml dall'ultimo al primo elemento

  1. #1
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito Aiuto su visualizzazione di un'archivio xml dall'ultimo al primo elemento

    Salve,

    Ho creato uno script che: dato un'archivio xml, contenente tutte le novità del mio sito, le visualizza ( dal primo e ultimo elemento e fino qui non ho riscontrato nessun problema.

    Il problema si verifica quando modifica il codice in modo che mi vengano visualizzati i dati dall'ultimo al primo elemento in archivio:

    Ho modificato il codice in questo modo:
    Codice PHP:
    <?php
    $doc
    = new DOMDocument("1.0", "ISO-8859-1");
    $doc->load("news.xml");
    $root = $doc->documentElement;
    $elements = $root->getElementsByTagName("new");

    // Conteggio elementi archivio
    $count = 0;
    foreach (
    $elements as $e)
    {
    ++
    $count;
    }

    // Visualizzazione risultati ( dall'ultimo al primo elemento )
    for ($i = $count; $elements->item($i); $i--)
    {
    // Recupero nodo "timestamp"
    $timestamp = $elements->item($i)->getElementsByTagName("timestamp");
    $timestamp = $timestamp->item(0)->nodeValue;

    // Recupero nodo "title"
    $title = $elements->item($i)->getElementsByTagName("title");
    $title = $title->item(0)->nodeValue;

    // Recupero nodo "context"
    $context = $elements->item($i)->getElementsByTagName("context");
    $context = $context->item(0)->nodeValue;

    // Output risultati
    $day = date("d/m/y", $timestamp);
    if (
    date("dmy", time()) == date("dmy", $timestamp)) {
    echo
    "<div class=\"box\"><strong>" . $title . "</strong> [<em><font color=\"red\"> inviata oggi</font> </em>]<hr />" . $context . "</div>";
    }else {
    echo
    "<div class=\"box\"><strong>" . $title . "</strong> [<em> inviata il: " . $day . " </em>]<hr />" . $context . "</div>";
    }
    }
    ?>
    Il problema e che non mi viene visualizzato nessun elemento a video, sbaglio qualcosa forse?

    Sevenjeak
    Software developer and much more

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Sbagli perché, avendo diciamo in tutto N elementi, stai cercando di accedere all'elemento con indice N: solo che la numerazione è 0-based e quindi in realtà sarebbe il (N+1)-esimo, che non esiste.

    Soluzione, modifica il ciclo for, iniziando a contare da $count - 1 (e non $count come è adesso)...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  3. #3
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Mi era sfuggito il fatto che gli indici non corrispondono ai numeri degli elemento

    Cmq grazie, ora funziona
    Ultima modifica di sevenjeak : 15-04-2010 alle ore 18.33.38

    Sevenjeak
    Software developer and much more

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •