Foros del Web » Programando para Internet » PHP »

PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

Estas en el tema de PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray) en el foro de PHP en Foros del Web. Hola gente, tengo un problema,estoy creando mi pagina web utilizando POO. Paso a explicar el problema: Como primer paso envio la consulta a las base ...
  #1 (permalink)  
Antiguo 25/08/2010, 13:04
Avatar de dario_sanz  
Fecha de Ingreso: marzo-2010
Mensajes: 94
Antigüedad: 14 años
Puntos: 3
PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

Hola gente, tengo un problema,estoy creando mi pagina web utilizando POO.
Paso a explicar el problema:
Como primer paso envio la consulta a las base datos pidiendole que me entregue como respuesta los campos de la tabla que le pedi...por ejemplo:
Tabla: web contiene camos de idmenu, idcontenido, etc...ahora idmenu tiene 4 campos que son los link internos de mi web...cuando yo envio la consulta me entrega satisfactoriamente los campos impresos en mi web...pero tambien me imprime array cuantas veces me imprime cada campo....
Osea si me imprime 4 campos, me imprime arriba del <div> array 4 veces....estos son mis script

Index.php::

<?php
require_once('functions/function.php');

?>
<?php
$var=new Leer();
$vec=$var->contenido();
for($i=0;$i<sizeof($vec);$i++)
{
$header=$vec[$i]["foto"];
$contenido=$vec[$i]['texto'];

ima/<?php echo $header;?>//## Aqui pido el menú y lo imprime a la perfeccion..y..arriba de eso me imprime array..
}



y Function.php:

<?php
class Conexion
{
public static function con()
{
$con=mysql_connect('localhost','root','');
mysql_query("SET NAMES 'utf8'");
mysql_select_db('sitio_5');
return $con;
}
}
//"""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""
class Leer
{
private $arrays;
private $menu;

public function __contruct($main)
{
$this->arrays=array();
$this->menu=$main;

}
public function menu()
{
$sql="select * from menu";
$res=mysql_query($sql,Conexion::con());
while($reg=mysql_fetch_assoc($res))
{

echo $this->arrays[]=$reg;

}
return $this->arrays;
}
//################################################## ################################################## #########
public function contenido()
{
if ( isset($_GET["id"]))
{
$sql="select H_.foto,C_.texto from header as H_,contenido as C_ where H_.id_menu=".$_GET['id']." and C_.id_menu=".$_GET['id']."";
}else{
$sql="select H_.foto,C_.texto from header as H_,contenido as C_ where H_.id_menu=1 and C_.id_menu=1";
}
$res=mysql_query($sql,Conexion::con());
while($reg=mysql_fetch_assoc($res))
{

echo $this->arrays[]=$reg;

}
return $this->arrays;
}
}
?>
Espero que puedan ayudarme amigos....

Última edición por dario_sanz; 25/08/2010 a las 13:09
  #2 (permalink)  
Antiguo 25/08/2010, 13:11
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

echo $this->arrays[]=$reg;

}
return $this->arrays;

si no quieres que te imprima.. arrayarrayarray por que le retornas un array?...
puedes probar con la funcion implode()
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 25/08/2010, 13:26
Avatar de dario_sanz  
Fecha de Ingreso: marzo-2010
Mensajes: 94
Antigüedad: 14 años
Puntos: 3
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

si amigo....pido que me retorne un array, pero no me lo tiene por que imprimir en pantalla...
eso es lo que no entiendo....
Para poder imprimir los campos desde la base datos necesitas un array...no es asi?...o me equivoco amigo hidek1....y agradezco mucho tu respuesta...
  #4 (permalink)  
Antiguo 25/08/2010, 13:28
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

bueno no leio mucho pero si tu dices esto
Cita:
echo $this->arrays[]=$reg;
el echo no le dice q te lo imprima??? saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #5 (permalink)  
Antiguo 25/08/2010, 13:42
Avatar de dario_sanz  
Fecha de Ingreso: marzo-2010
Mensajes: 94
Antigüedad: 14 años
Puntos: 3
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

Cita:
Iniciado por carlos_belisario Ver Mensaje
bueno no leio mucho pero si tu dices esto

el echo no le dice q te lo imprima??? saludos
Si amigo, quiero que me lo imprima pero por que ese array lo uso para leer base de datos...ahora cadaves que me imprime, imprime el nombre de un campo seguido de un array....ese es mi problebla...he cambiado la funcion sizeof por count() y me tira un error en el mysql_fetch_assoc(); ya no se mas que hacer amigos ...la funcion implode no se como utilizarla...se que me te lee array pero yo lo que necesito es crearlo y que no me imprima array seguido del campo que le pedi...
  #6 (permalink)  
Antiguo 25/08/2010, 13:48
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

bueno creo q cuando se trabaja con el fetch_asocc de la manera que lo trabajaste se debe de hacer algo asi
echo $array[0]['campo']; donde 0 es el primer registro pero no estoy seguro si es el problema, pero imprimiendo ahi directo estas imprimiendo un array no estas indicando nada ya que el resultado te lo devuelve en un array espero me alla echo entender xq creo q lo enrede suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #7 (permalink)  
Antiguo 25/08/2010, 13:54
Avatar de dario_sanz  
Fecha de Ingreso: marzo-2010
Mensajes: 94
Antigüedad: 14 años
Puntos: 3
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

Asi lo hago amigo--->ima/<?php echo $header;?>// osea que la variable $header es igual a $header=$vec[$i]["foto"]; .....si se como funciona un array...yo lo utilizo con una estructura for()... igual gracias por responderme amigo
  #8 (permalink)  
Antiguo 25/08/2010, 13:58
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

bueno la impresion por pantalla de array es en esta linea por lo q te indico
Cita:
echo $this->arrays[]=$reg;
estas imprimiendo un array sin indicarle indice ni nada por eso es q te sale array kitale el echo y no te saldra mas esa linea de impresion no crees tu???
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #9 (permalink)  
Antiguo 25/08/2010, 14:05
Avatar de dario_sanz  
Fecha de Ingreso: marzo-2010
Mensajes: 94
Antigüedad: 14 años
Puntos: 3
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

....Mira amigo, tengo que rendir parciales a doquier jejeje....estoy exausto....PERO TENGO QUE DECIRLO, UN MAESTRO; SOLUCIONADO EL PROBLEMA.....era tan tonto en problema y yo papando moscas gracias amigo....el problema fue resuelto...

Le quite el echo dentro del objeto y ya.....me dejo de imprimir ese "##%&$ array....

Gracias de vuelta.....
  #10 (permalink)  
Antiguo 25/08/2010, 14:07
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: PROBLEMA DE POO ( Te imprime en pantalla arrayarrayarayarray)

bueno a veces los problemas mas pequeños son los mas dificiles de ver y mas si uno esta cansado de darle vuelta en la cabeza y no encuentra solucion suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way

Etiquetas: imprime, pantalla, poo
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 21:21.