Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Problema con mi ClaseProveedor

Estas en el tema de Problema con mi ClaseProveedor en el foro de Frameworks y PHP orientado a objetos en Foros del Web. hola chikos, estoy implementando Clases en mi proyecto de PHP. y tengo problemas con mi metodo Listar() de mi ClsProveedor, aki les envio el codigo: ...
  #1 (permalink)  
Antiguo 20/06/2007, 22:47
 
Fecha de Ingreso: diciembre-2004
Mensajes: 133
Antigüedad: 19 años, 5 meses
Puntos: 0
Pregunta Problema con mi ClaseProveedor

hola chikos,

estoy implementando Clases en mi proyecto de PHP. y tengo problemas con mi metodo Listar() de mi ClsProveedor, aki les envio el codigo:


Código PHP:
<?php 

require_once('../Clases/ClsConexion.php');

class 
Proveedor {
    var 
$icodprov1;
    var 
$iruc1;
    var 
$strrazon1;
    var 
$strespe1;
    var 
$strdire1;
    var 
$strfono1;
    var 
$strest1

    function 
Listar() {
        
//Instanciar mi conexion
        
$objconexion= new conexion();
        
$objconexion->conexion();

        
$consulta_prov=mysql_query("select *from sgi_proveedor",$objconexion->db_conexion1);
        
$resultados_prov = array();
        while((
$fila_prov=mysql_fetch_array($consulta_prov)))
        {
             
$resultados_prov[] = $fila_prov;
        }
        
mysql_close($objconexion->db_conexion1);
        
        return 
$resultados_prov;
        }  
}


?>
y la uso en :


Código HTML:
<table width="100%" align="center">
<tr height="20" bgcolor="#B6CFE0" align="center" >
	<td bgcolor="#C8DBE8" class="campo" >Id</td>
	<td bgcolor="#C8DBE8" class="campo" >RUC</td>
	<td bgcolor="#C8DBE8" class="campo" >Razón Social</td>
	<td bgcolor="#C8DBE8" class="campo">Más..</td>
</tr> 
Código PHP:
<?php
//Creo la instanciacaion a mi clsProveedor
$objProveedor = new Proveedor();
$objProveedor->Listar();

foreach (
$objProveedor as $fila_prov)  //LINEA 34
echo
"<tr class=texto_tabla>".
"<td width=10% align=center bgcolor=#C8DBE8 class=campo>".$fila_prov["ps_idproveedor"]."</td>".
"<td  bgcolor=#F0F0F0 class=campo1>".$fila_prov["i_ruc"]."</td>".
"<td  bgcolor=#F0F0F0 class=campo1>".$fila_prov["vc_razon_social"]."</td>".
"<td align=center  bgcolor=#F0F0F0><a href=\"./Proveedor_sd.php?icodprov=".$fila_prov["ps_idproveedor"]."\">Ver..</a></td></tr>";
}
?>
Código HTML:
</table> 
no me muestra datos...

Que esta mal ?????:(

espero me puedan ayudar.GRACIAS.
__________________
Mina

Última edición por yesmina; 20/06/2007 a las 23:07
  #2 (permalink)  
Antiguo 21/06/2007, 07:57
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema con mi ClaseProveedor

Hola yesmina,

Creo tu problema esta en tu query, lo estas haciendo asi:
Código:
select *from sgi_proveedor
Esto crea un error en tu query, debe de ir asi:
Código:
SELECT * FROM sgi_proveedor
Saludos.
  #3 (permalink)  
Antiguo 21/06/2007, 10:36
 
Fecha de Ingreso: abril-2007
Mensajes: 33
Antigüedad: 17 años
Puntos: 0
Re: Problema con mi ClaseProveedor

Veo que instancias la clase coneccion dentro de la clase proveedor, no es mejor heredarla?

Class Proveedor extends Conexion

Pregunto porque soy novato y estoy empezando en POO, y esta consulta me genero esta duda.

Saludos.
  #4 (permalink)  
Antiguo 21/06/2007, 14:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema con mi ClaseProveedor

Todo depende, del concepto de tu sistema, no es necesario heredar y depende mucho del planteamiento de como esten comunicadas las entidades.

Saludos
  #5 (permalink)  
Antiguo 26/06/2007, 08:18
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 384
Antigüedad: 19 años, 3 meses
Puntos: 0
Re: Problema con mi ClaseProveedor

Otra opcion, que hago a menudo, seria pasar el objeto conexion por parametro al metodo.
__________________
m!ketrix
CINE25 - Red Social de Cine
byinspiroh
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:58.