Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Warning da loadXML()

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    105

    Warning da loadXML()

    Ho un problema con le api googleAnalytics. In locale tutto ok, in remoto no!
    A volte estrae i dati e a volte no! L'unico messaggio di errore è questo (un warning):

    DOMDocument::loadXML() [domdocument.loadxml]: Empty string supplied as input

    questa è la funzione che genera l'errore (non è mia ma è una libreria di Google scaricata):
    codice:
    public function getDataResult() {
                $data = array();
                $xml = GoogleAnalyticsApi::getPage($this->generateQuery(), $this->auth);
                if(is_integer($xml)) {
                    $this->errorCode = $xml;
                    return false;
                }
                $dom = new DOMDocument();
                $dom->loadXML($xml);
                $entries = $dom->getElementsByTagName("entry");
                foreach($entries as $entry) {
                   $objEntry = new Entry();
                   $dimension = $entry->getElementsByTagName("dimension");
                   foreach ($dimension as $d) {
                       $objEntry->addProperty($d->getAttribute("name"),$d->getAttribute("value"));
                   }
                   $metric = $entry->getElementsByTagName("metric");
                   foreach ($metric as $m) {
                       $objEntry->addProperty($m->getAttribute("name"),$m->getAttribute("value"));
                   }
                   array_push($data, $objEntry);
                }
                return $data;
                
            }
    
            public function getXmlResult() {
                return GoogleAnalyticsApi::getPage($this->generateQuery(), $this->auth);
            }
    
        }
    L'errore dovrebbe nascere nel terzo rigo.. avete idee!?!? (in locale funziona sempre!) Il sito gira su altervista!

  2. #2
    Sulla causa non saprei, ma potresti aggiungere un controllo sulla stringa vuota ad esempio:

    Codice PHP:
    ...
    if(empty(
    $xml)) {
        return 
    false;
    }
    ... 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    105
    Il punto è che in locale funziona e su altervista no, dunque presumo che il problema non sia nel codice ma in qualche opzione di altervista..

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.