Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/05/2007, 23:33
Avatar de Dr.Guindows
Dr.Guindows
 
Fecha de Ingreso: enero-2004
Mensajes: 77
Antigüedad: 20 años, 3 meses
Puntos: 0
Exclamación Problemas con Instanciar una clase en PHP5

Tengo un problema cuando voy a instanciar una clase, tengo un archivo llamado xml.php el cual contiene el siguinte codigo
Código PHP:
class xml_mio{
    //
    var $content;
    var $xml_version;
    var $xml_encoding;
    var $data_label;
    var $item_label;
    var $sentencia;    
    var $db_key;
    //
    //
    /** constructor; carga algunos valores por defecto
    */
    public function xml() {
        $this->content = Array();
        $this->xml_version = "1.0";
        $this->xml_encoding = "ISO-8859-1";
        $this->data_label = "datos";
        $this->item_label = "item";
    }
    //
    //
    /** Recibe los datos a mostrar en una matriz de dos dimensiones,
    * y los almacena internamente
    */
    function setSentencia($strSqlQuery){
        $this->sentencia = $strSqlQuery;
    }
    function setDb_Key($dbconn){
        $this->db_key = $dbconn;
    }
    function setContent($data = NULL) {
        if ($data != NULL) {
            $this->content = $data;
        }
    }
    //
    /** Devuelve el contenido de la matriz, eliminando los indices duplicados si se especifica
    *@return el contenido de la matriz
    */
    function getContent() {
        return ($this->content);
    }
    //
    /** Muestra en cadena de texto los valores con formato xml
    *@return los datos en formato xml
    */
    function toString() {
        
    $return = "";
    
    if ($this->content != NULL) {
        //echo "PASO 1";
        $return .= $this->header();
        $return .= "<".$this->data_label.">\n";
    //para cada elemento de la matriz, hay una matriz de datos con los índices del resultado mysql
    foreach ($this->content as $result)
    {
        $return .= "\t<".$this->item_label.">\n";
        foreach( $result as $key => $value ) {
            $return .= "\t\t<" . $key . ">" . $value ."</" . $key . ">\n";
        }
        $return .= "\t</".$this->item_label.">\n";
    }
        $return .= "</".$this->data_label.">";
    }
        return ($return);
    }
    //
    /** Devuelve la cabecera xml
    *@return la cabecera xml
    */
    function header(){    
        return ("<?xml version="".$this->xml_version."\" encoding=\"".$this->xml_encoding."\"?>\n");
    }
    
//Devuelve un Archivo XML con la sentencia
    
public function genera_XML(){

        
$results = array();
        
$resultado mysql_query($this->sentencia$this->db_key);
        
$i 0;
        while (
$row mysql_fetch_assoc($resultado)){
            
$results[] = $row;
        }
        
$xml = new xml();
        
$xml->setContent($results);
        
//hemos obtenido los datos, ahora los mostramos en xml
        
header('Content-Type: text/xml');
        echo 
$xml->toString();
    }
}
tengo otro archivo llamado jose.php el cual instancia la clase contenida en el archivo anterior, pero no me funciona me da el siguiente error
Cita:
Fatal error: Class 'xml_mio' not found in C:\Archivos de programa\EasyPHP 2.0b1\www\Quiniela\jose.php on line 3
aqui anexo el codigo de jose.php
Código PHP:
include("class/xml.php");
    
$xml = new xml_mio();
    
$db mysql_connect("localhost""root") or die("No se pudo conectar con la base de datos");
    
mysql_select_db("facilquiniela") or die(mysql_error());
    
$xml->setSentencia("select * from personanatural");
    
$xml->setDb_Key($db);
    
$xml->genera_XML(); 
Agradezco cualquier ayuda que me puedan brindar...
__________________
La vida es un sin fin de inhalaciones y expiraciones o son los momentos que nos dejan si ellas ;) !!! :arriba: