P3rukao 0 Denunciar post Postado Março 3, 2009 Seguinte pessoal.... vou ser direto (±). » eu preciso fazer uma listagem de empreendimentos (prédios) numa página... ele contém informações como, Nº de Prédios, Nº de andares q cada predio tem, e Nº de apartamentos por cada andar. » Eu peguei essas informações em um form de cadastro, enquanto cadastro os empreendimentos e gerei uma string com o numero de todos os apartamentos desse prédio (101,102, 201,202, etc)... » Criei uma tabela para cadastrar o numero desses apartamentos, fazendo referencia ao empreendimento; [b]Tabela PREDIOS[/b] campos: id_predio, predio, id_empreendimento, apartamento, disponivel » Eu preciso, depois que essas informações estão cadastradas, exibir uma lista com todos os apartamentos, referentes a UM empreendimento que eu passo por GET para esta pagina (a de listar), e organizar esses dados por Prédio, e se possivel por andar também... Seria mais ou menos assim EMPREENDIMENTO NUMERO 1 [b]PREDIO 1[/b] 101 - 102 - 103 - 104 ... 201 - 202 - 203 - 204 ... [b]PREDIO 2[/b] 101 - 102 - 103 - 104 ... 201 - 202 - 203 - 204 ... [b]PREDIO 3[/b] 101 - 102 - 103 - 104 ... 201 - 202 - 203 - 204 ... .:: O PROBLEMA ::. eu tentei usar um SELECT dentro de um laço FOR, mas parece que não é permitido isso.. (éh ??) // string de conexão e talz... $id = $_GET['id']; $qry = mysql_query("SELECT * FROM empreendimentos WHERE id_empreendimento = $id") or die(mysql_error()); if (mysql_num_rows($qry) > 0) //se já tiver texto adicionado, então atualiza senão... { $camposEmp = mysql_fetch_array($qry) //resgata os valores "buscados" na consulta acima for($i=1; $i<=$camposEmp['ntorres'];$i++) { $qryBloco = mysql_query("SELECT * FROM blocos WHERE id_empreendimento = $id AND torre = $i AND disponivel = 'sim'") or die(mysql_error()); if (mysql_num_rows($qryBloco) > 0) //se já tiver texto adicionado, então atualiza senão... { while($camposBloco = mysql_fetch_array($qryBloco)) //resgata os valores "buscados" na consulta acima { echo "<label style=\"display:inline-block; width:30px; text-align:center; \"><input style=\"display:block; margin:0 auto;\" type=\"checkbox\" value=\"".$camposBloco['id_empreendimento']."_".$camposBloco['torre']."_".$camposBloco['apartamento']."\" />".$camposBloco['apartamento']."</label>"; } //end while fetch array }//end if numRows else { echo "nenhuma informação disponível no momento"; } } } else { } Compartilhar este post Link para o post Compartilhar em outros sites
Hugo Duca 0 Denunciar post Postado Março 3, 2009 Amigo, tente substituir esse seu for que me parece estar errado, por isso while($camposEmp = mysql_fetch_array($qry)) tenta isso e apaga essa linha aki do seu codigo $camposEmp = mysql_fetch_array($qry) //resgata os valores "buscados" na consulta acima Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Março 3, 2009 mas fazendo isso eu "mato" o código... Essa instrução $camposEmp = mysql_fetch_array($qry), serve para resgatar os valores de uma outra consulta, à tebela EMPREENDIMENTOS, que contem outros dados, como por exemplo, o numero de predios, numero de andares, e de apartamentos por andar... A bronca eh mais pra baixo, no laço feito na variavel $qryBloco, que eh nessa consulta que eu pego os numeros dos apartamentos para poder listar na página. O que me parece eh que não se pode executar a mesma consulta (mysql_query) mais de uma vez na mesma página, tipo: Compartilhar este post Link para o post Compartilhar em outros sites
Hugo Duca 0 Denunciar post Postado Março 3, 2009 Eu posso et garantir que você pode usar quantos mysql_query você kiser por pagina... Qual o erro que está aparecendo pra você? Pelo menos tenta fazer akilo que eu disse... Compartilhar este post Link para o post Compartilhar em outros sites
P3rukao 0 Denunciar post Postado Março 3, 2009 Eu ajeitei aqui.... Aquilo que você me disse, eh como eu te falei..... faz parte da funcionalidade da página... primeiro eu verifico se existe algum empreendimento para poder fazer alguma coisa... =/ O que eu fiz foi o seguinte.... no exemplo que postei, havia um erro no FOR, eu não havia terminado a estrutura dele ($i++), ajeitei isso e fiz outra coisa... daí voltou a funcionar!!!! for($i=1; $i<=$camposEmp['ntorres'];$i++) { $qryBloco = mysql_query("SELECT * FROM blocos WHERE id_empreendimento = $id AND torre = $i AND disponivel = 'sim'") or die(mysql_error()); if (mysql_num_rows($qryBloco) > 0) //se já tiver texto adicionado, então atualiza senão... { echo "<fieldset><legend>Torre $i</legend>"; while($camposBloco = mysql_fetch_array($qryBloco)) //resgata os valores "buscados" na consulta acima { echo "<label style=\"display:inline-block; width:30px; text-align:center; \"><input style=\"display:block; margin:0 auto;\" type=\"checkbox\" value=\"".$camposBloco['id_empreendimento']."_".$camposBloco['torre']."_".$camposBloco['apartamento']."\" />".$camposBloco['apartamento']."</label>"; } //end while fetch array echo "</fieldset>"; }//end if numRows else { echo "nenhuma informação disponível no momento"; } }//end for Agora eu consigo separar por PRÉDIOS, mas não por ANDAR... =/ ³ Compartilhar este post Link para o post Compartilhar em outros sites