|
Smarty
WARNING: All discussion is moving to https://reddit.com/r/smarty, please go there! This forum will be closing soon. |
|
View previous topic :: View next topic |
Author |
Message |
evandrOliveira Smarty n00b
Joined: 28 May 2008 Posts: 1
|
Posted: Wed May 28, 2008 4:19 am Post subject: loop dentro de loop |
|
|
Olá tudo bem.
Estou com a seguinte questão. Possuo duas tabelas
categoria = possui categorias existentes
receitas = possui as receitas e indica a categoria a qual pertencem
Quero consultar uma lista que mostre somente as categorias q possuem receitas, e imprima estas receitas. Então tenho um código da seguinte maneira.
Abaixo colocarei uma situação semelhante da q estou buscando a solução, pois imagino q colocando o código original só irar confundir por ser só objetos de classes.
A situação seria a seguinte.
//Ele busca todas categorias existentes
$query = mysql_query("SELECT * FROM categorias");
$rows = mysql_num_rows($query);
//Cria um laço para tratar as categorias
for($i = 0; $i < $rows ; $i++)
{
$categoria = mysql_result($query,$i,"categoriaNome");
//Verifica se existe receita nesta categoria
if($query = mysql_query("SELECT categoria FROM receitas WHERE categoria = $categoria)
{
//Caso possui receita com esta categoria cria variavel da categoria e imprimi as receitas desta categoria.
$categoriaNome[] = mysql_result($query,$i,"categoriaNome");
$query2 = mysql_query("SELECT * FROM receitas WHERE categoria = $categoria)
$row2 = mysql_num_rows($query2);
//Cria um laço para as receitas da atual categoria do primeiro laço
for($j = 0; $j < $row2 ; $j++)
{
$receitaNome [] = mysql_result($query2,$j,"receitaNome");
}
}
}
Não corriji o código quero passar a idéia, espero q alguem possa me ajudar. Pois no primeiro loop ele consulta todas categria e dentro deste loop em cada categoria ele faz outro loop para pegar receitas desta categoria. Se eu colocar um print só na frente das variáveis categoria e receita blz é oq quero, mas quero saber como vou passar esse loop pro smarty.
De maneira q
CATEGORIA 1
- receita categoria 1
- receita categoria 1
CATEGORIA 2
-receita categoria 2
-receita categoria2
de maneira q ele faça o loop em ordem, da categoria e dentro dela outro loop com as receitas desta categoria.
dificil alguem responder ou entender. mas fico grato se puderem ajudar. |
|
Back to top |
|
migas Smarty Regular
Joined: 07 Apr 2004 Posts: 73 Location: Porto, Portugal
|
Posted: Thu Jun 12, 2008 11:00 am Post subject: |
|
|
Total Receitas nas categorias.
Code: |
$sql="
SELECT *, COUNT(categoria) AS receitas_total FROM categorias
LEFT JOIN receitas ON categoriaNome = categoria
GROUP BY categoria
";
|
Tens em [receitas_total] o número de receitas que existem. |
|
Back to top |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|