While dentro de outro, quando e como fazer?

17/05/2014

0

PHP

um pouco dificil para meu entendimento, mas quando fazer um while dentro de outro?(melhor pratica) e como fazer?
Mauricio Padua

Mauricio Padua

Responder

Post mais votado

24/06/2014

Mauricio Padua

Explicando no primeiro select

$queryEstado = mysql_query("SELECT idEstado FROM estado");

ele pega todos os estados e armazena na variável ------> $queryEstado

Quando eu jogo no segundo eu seleciono todas as cidades daquele estados, 1 a 1 utilizando o while para fazer o loop, ele só vai para o próximo estado após terminar todas as cidades.

WHILE($resEstado = mysql_fetch_array(--------> $queryEStado)){

//selecionando todas as cidades do primeiro estado
$queryCidade = mysql_query("SELECT NomeCidade FROM cidade WHERE estado_id_estado = '".$resEstado['idEstado']."'");

echo $resEstado["NomedoEstado"]."<br />"; // vai exibir o nome do estado

WHILE($resCidade = mysql_fetch_array($queryCidade)) {

echo $resCidade['NomeCidade']."<br />";

}

Assim quando executar vai exibir

Rio de janeiro

todas as cidades do rio de janeiro

São Paulo

todas as cidade de São Paulo

Espero ter ajudado, se entendeu da um joinha :)

Eduardo Silva

Eduardo Silva
Responder

Mais Posts

06/06/2014

Lucas Burg

Boa noite,

O loop while e processado ate uma condição ser verdadeira ou falsa, sabendo disso pode realizar eles conforme sua necessidade(um dentro de outro ou fora).

exemplo :


$contador = 0;

while($contador < 10){

//Aqui vai o conteudo

}


abç.
Responder

07/06/2014

Mauricio Padua

certo, mas poderia me dizer uma funcionalidade em que é utilizado? qualquer exemplo.
Responder

08/06/2014

Marcio Araujo

pense da seguinte forma, se existir alguma funcionalidade que dependa da outra, um while dentro de outro.
Responder

19/06/2014

Mauricio Padua

certo Marcio, se abstrair as vezes não é facil.
Responder

20/06/2014

Marisiana Battistella

Um exemplo que pode ser "mais comum" é a utilização de laços de repetição para popular arrays (matrizes).
Responder

20/06/2014

Mauricio Padua

putz Marisiana, hehehe, fiquei confuso agora. mas popular arrays em um sistema "real", qual seria a finalidade, guardar dados por um tempo? a ideia é essa?
Responder

22/06/2014

Marisiana Battistella

É apenas um exemplo no qual se utiliza um laço de repetição dentro de outro, que responde a tua pergunta de abertura do tópico...
um pouco dificil para meu entendimento, mas quando fazer um while dentro de outro?(melhor pratica) e como fazer?

Citei esse, pois arrays aprende-se em lógica de programação então, achei que facilitaria o entendimento...
Responder

24/06/2014

William

Olá Mauricio, um exemplo simples de uso para 2 loops, tenho alguns sistemas em PHP que fazem importação de dados contidos em planilhas do excel para um determinado banco de dados, para isso tenho uma classe que entre outras funcionalidades possui um método que usa um loop para percorrer todas as linhas da planilha e dentro desse loop tem outro que percorre todas as colunas da linha que está sendo lida, funcionamento semelhante ao plano cartesiano.
Responder

24/06/2014

Eduardo Silva

Exemplo de while dentro de while.

$queryEstado = mysql_query("SELECT idEstado FROM estado");


WHILE($resEstado = mysql_fetch_array($queryEStado)){

$queryCidade = mysql_query("SELECT NomeCidade FROM cidade WHERE estado_id_estado = '".$resEstado['idEstado']."'");

WHILE($resCidade = mysql_fetch_array($queryCidade)) {

echo $resCidade['NomeCidade'];

} // PRIMEIRO WHILE
} // SEGUNDO WHILE
Responder

24/06/2014

Lucas Rocha

Outra função é de extrair dados de um DB..

	<html>
	<head>
	<title>Extraindo dados de um  Banco de Dados</title>
	</head>
	<body>

	<?php
	// Conexão com o Banco de Dados
	mysql_connect("mysql.myhost.com", "user", "sesame") or die (mysql_error ());

	// Seleciona o Banco de Dados
	mysql_select_db("mydatabase") or die(mysql_error());

	//query SQL
	$strSQL = "SELECT * FROM people";

	// Executa a query (o recordset $rs contém o resultado da query)
	$rs = mysql_query($strSQL);
	
	// Loop pelo recordset $rs
	// Cada linha vai para um array ($row) usando mysql_fetch_array
	while($row = mysql_fetch_array($rs)) {

	   // Escreve o valor da coluna FirstName (que está no array $row)
	  echo $row['FirstName'] . "<br />";

	  }

	// Encerra a conexão
	mysql_close();
	?>
	</body>
	</html>
Responder

24/06/2014

Mauricio Padua

É apenas um exemplo no qual se utiliza um laço de repetição dentro de outro, que responde a tua pergunta de abertura do tópico...
um pouco dificil para meu entendimento, mas quando fazer um while dentro de outro?(melhor pratica) e como fazer?

Citei esse, pois arrays aprende-se em lógica de programação então, achei que facilitaria o entendimento...


não esquenta, te agradeço
abraço.
Responder

24/06/2014

Mauricio Padua

Para o pessoal que me passou infos e codigos, agradeço mesmo.

Willian, notei algo a mais de programação e matematica pura na sua explicação, hehe, mas entendi.

Eduardo, entendi a base do codigo mas não entendi bem o que ele faz.

Lucas, ele extrai e imprime na tela, é isso?
Responder

24/06/2014

Marisiana Battistella

É apenas um exemplo no qual se utiliza um laço de repetição dentro de outro, que responde a tua pergunta de abertura do tópico...
um pouco dificil para meu entendimento, mas quando fazer um while dentro de outro?(melhor pratica) e como fazer?

Citei esse, pois arrays aprende-se em lógica de programação então, achei que facilitaria o entendimento...


não esquenta, te agradeço
abraço.


Por nada! =)
Responder

24/06/2014

Mauricio Padua

100% entendido!!! show!!!
Responder

24/06/2014

William

Finalizando tópico!
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar