bug xml api

bug xml api

Beitragvon Gast » 3. Okt 2008, 22:19

Hy,

ich versuche mir ein script in php5 zu basteln womit ich die userdaten auslesen kann, nur leider bekomme ich einfach kein erfolg da etwas wichtiges bei der programmierung (seitens des autors) etwas vergessen wurde. in der api werden namespaces benutzt, diese sind jedoch nicht im header des documentes deklariert.

kann das der autor fixen?
Gast
 

Re: bug xml api

Beitragvon Gast » 4. Okt 2008, 09:41

ich denke mal, das das nicht hier hin gehöert...
Gast
 

Re: bug xml api

Beitragvon Gast » 4. Okt 2008, 17:19

das prob hatte ich auch, hab dann einfach regex benutzt
Gast
 

Re: bug xml api

Beitragvon Gast » 5. Okt 2008, 11:17

Hi,
probiere es mal mit folgender Klasse:

Code: Alles auswählen
<?php
/**
* World Hack Organization - XMLAPI Klasse
*
* Die API Klasse gibt die XML Datei in einem Array zurück, um dieses
* in einer weiterverarbeitung zu behandeln.
*
*
* @author    Kevz <Godecker@gmx.net>
* @copyright 2008 Kevin Gödecker
* @version   1.0.0 Beta
*/
class WHO_xmlAPI {
  /**
   * @var string
   * @access protected
   **/
  protected $url = '';

  /**
   * @var string
   * @access protected
   **/
  protected $xmlAPI = '';

  /**
   * @var string
   * @access protected
   **/
  protected $xmlAPISource = '';

  /**
   * @var string
   * @access protected
   **/
  protected $onError = 'errorHandler';



  /**
   * my private errorHandler. :-)
   *
   * @access protected
   * @return null
   */
  protected function errorHandler ( $message )
  {
    die($message);
  }


  /**
   * Zum setzen der URL, beim Abrufen der XML-API
   *
   * @param string $url XML-API URL-Adresse
   *
   * @access public
   * @return boolean
   **/
  public function setURL ( $url )
  {
    $content = @file_get_contents($url);
    if ( $content === false )
      return false;
    else {
      $this->url    = substr($url, 0, strrpos($url, '/')+1);
      $this->xmlAPI = substr($url, strrpos($url, '/')+1);

      $this->xmlAPISource = @file_get_contents($url);

      return true;
    }
  }


  /**
   * RegExpression ausführen, um den XML-Code in ein Array
   * zu Konventieren.
   *
   * @access public
   * @return null
   */
  public function getAPI ( )
  {
    $regEXP = '/<(.*?)>(.*?)<\/\\1>/s';
    preg_match_all($regEXP, $this->xmlAPISource, $xml);
    preg_match_all($regEXP, $xml[2][0], $xmlAttributes);

    $i = 0;
    $attributes = array();

    foreach ( $xmlAttributes[1] as $key ) {
      $attributes[$xmlAttributes[1][$i]] = $xmlAttributes[2][$i];
      $i++;
    }

    return $attributes;
  }


  /**
   * Instanz der Klasse erzeugen und zurückgeben
   *
   * @access public
   * @return object
   **/
  static public function &getInstance ()
  {
    static $instance;

    if ( !isset($instance) ) {
      $instance = new self;
    }
    return $instance;
  }


  /**
   * Wird am Ende aufgerufen
   *
   * @access public
   * @return null
   **/
  public function __destruct ()
  {
    if ( empty($this->onError) )
      $this->onError('Es wurde keine Funktion zur Fehlerbehandlung definiert!');

    if ( $this->url === false )
      $this->onError('Die XML-API konnte nicht aufgerufen werden!\n
                      Es wurde keine gültige URL-Adresse zur API angegeben.');
  }
}


// WHO XML-API Klasse erzeugen
$xmlAPI = WHO_xmlAPI::getInstance();
$xmlAPI->setURL('http://www.world-hack.org/api_xxxxxxxxxxxx.xml');

$dump = $xmlAPI->getAPI();
var_dump($dump);
?>
Gast
 

Re: bug xml api

Beitragvon Gast » 7. Okt 2008, 11:54

ich dank dir für die klasse, ich nehme mal an das du sie einfach mal schnell geschrieben hast, nur verstehe ich nicht warum du dann nicht gleich die xml ausgabe überarbeitest, ich bin denke ich mal nicht der einzigste mit dem problem, wäre der fehler nicht könnte ich mein script gleich im IRC/TCL schreiben und müsste nicht den umweg über php gehen ;)

ich danke dir aber trotzdem soweit.
Gast
 

Re: bug xml api

Beitragvon Biondetta » 7. Okt 2008, 14:22

Ich habe zwar Null Ahnung...weder was das hier is, noch was das problem is aber egal...
* @author Kevz <Godecker@gmx.net>
* @copyright 2008 Kevin Gödecker
* @version 1.0.0 Beta

Jedenfalls sieht es für mich so aus als wäre nicht summa der Author dieses dingens sonder jemand anders:)
Biondetta
Cheater
 
Beiträge: 64
Registriert: 28. Jun 2008, 20:29
Hat Gedankt: 0 time
 Danksagungen: 0 time


Zurück zu Feedback / Anregungen



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

cron