Ver Mensaje Individual
  #9 (permalink)  
Antiguo 03/04/2013, 17:24
Avatar de guardarmicorreo
guardarmicorreo
 
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: problema al recorrer array con for

Cita:
Iniciado por Sevillacode Ver Mensaje
andresdzphp tiene razon has olvidado el indice y por lo tanto haces referencia al array que contiene todos, el mismo que cuentas en el for.

De todas formas si lo que quieres es averiguar el nº correspondiente de habitaciones con respecto a un usuario, debes cruzar las tablas en la consulta, normalmente mediante un id (en este caso debe haber un id usuario en cada registro de habitaciones).

$consulta = "SELECT DISTINCT u.usuario, h." . $this->tipo_habita . " as total FROM usuarios u, habitaciones h WHERE u.usuario='" . $this->usuario . "' AND u.id_usuario = h.id_usuario";

Esto obtendra un campo "usuario" y uno "total" que tiene el valor del tipo de habitacion obtenido segun el post. Como ves se relaciona por el id_usuario, campo que he supuesto, deberas poner el que tu tengas en tu codigo. El distinct limpia el resultado de la consulta de elementos coincidentes.
Te recomiendo ejecutes las sentencias en el phpmyadmin y veas los distintos resultados.

O eso o no te he entendido bien...
tienes razón, soy un desastre lo siento, por querer correr no relacioné las tablas en la consulta, sí las tenía relacionadas en la propia base de datos.

la consulta ha quedado así

Código PHP:
Ver original
  1. $consulta = "SELECT usuario, " . $this->tipo_habita . " FROM usuarios, habitaciones WHERE (usuario='" . $this->usuario . "' AND usuarios.id=id_usuarios)";
  2.  
  3. //usuarios.id está en la tabla usuarios como campo id
  4. //id_usuarios está en la tabla habitaciones como campo id_usuarios
  5. //tanto clave primaria como foránea están ya relacionadas con el diseñador de //phpmyadmin

pero me sigue devolviendo el mismo error :S

perdón por todo este jaleo, pero llevo dos días estancado en esto y no logro resolverlo